clear
sk_seed = random( 16 )
sk_prf = random( 16 )
pk_seed = random( 16 )
rnd = random( 16 )
m = random( 32 )
ctx = random( 32 )
// 生成密钥
x = fips205_keygen_sha2__128f( $sk_seed, $sk_prf, $pk_seed )
if $x != 00
?
pause
endif
sk = fips205_get_sk()
pk = fips205_get_pk()
// 对明文签名
sig = fips205_sign_sha2__128f( $m, $sk, $ctx, $rnd )
res = fips205_verify_sha2__128f( $m, $sig, $pk, $ctx )
if $res != 00
?
pause
endif
// 对hash签名
h = fips204_prehash_sha512( $m, $ctx )
sig = fips205_sign_hash_sha2__128f( $h, $sk, $rnd )
res = fips205_verify_hash_sha2__128f( $h, $sig, $pk )
if $res != 00
?
pause
endif