11package main
22
3+ // This is an example for verifying the signature by the given public key.
4+ // Used arguments:
5+ // hash method: SHA3-512
6+ // PSS salt length: rsa.PSSSaltLengthEqualsHash
7+ // Message: 95e156395687128711f29b68fbc44573667bdfc5f0d65010cb0555b62138d830
8+ // Signature: upagNzGSL3ZqCsxApgG8yiG/x1c+ZZBJgNtzvZR2KYVLP60+hAr5WcnZ129PG486rl6r2kLMwq8jIu4CUSvwpIblqCILWk7kxQzlei+//7JweQxLbkXfWgdmwA1mUflBXyqQ4vAFyL4w3g44GilInp0nT/iswdAFiCgb5RaK8xkmq+HDeghQWHsNxkPjf7ffDU8wnaLxAK0w4vwYm8BdhzKvEyRFbiTFohLwa4F9byVGrTIAEj53CQ0VvbKwQT6SH+LUVAp5Wr5vMPAREebx/0X5Yy63EuXWvCdZwG64n/TAm4qFhMThrtX+8h+zyf+CViDSZ1xAwkPNtfaQ3scN7g==
9+
310import (
411 "crypto"
512 "crypto/rsa"
@@ -17,13 +24,13 @@ import (
1724// Paste the public key here and don't reserve any spaces.
1825var publicKeyBytes = []byte (
1926`-----BEGIN PUBLIC KEY-----
20- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAt8sWoEyEdJso7GP5jVqY
21- K+pLu3bUFAsWh3NClHM5CzTH34JKPTInFMQbDTaZ2Q23hmC2uLvYKriX8hFa9UOJ
22- BXz2uwQhSzCu6RwN0Evrbj1DkWo0p6ifOa4BkYt4+mGDtVrGBGeLQCRtU1CoAVal
23- AtzOKFfHhrE2xinSZk2uDwUq4lClegfU99hqPKAmAXg3s90mZ+D43cdmn0HkjJ/9
24- qe4aZwP+u2fdgXow0Z+dRnc8NDVsWfMdfduReuwHiuCOFFjWhh83/Wta9i0JrT0Y
25- uSYgJswTRHa9bI6uatvIwmHV1mADc0/RUl9uJzc0x/pC/RiMlE/4OYU/exL88Xo4
26- GwIDAQAB
27+ MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzTuY9ePxSX533aa54/aY
28+ Qobqzz0/alc40C31/fYgYXLQVeMJ4vXBHKFhWOaf+ZBf2bQBLx2aIa2ODZcH4ZNF
29+ UIbSZu9jmWN6kcSCw5IMPuDW2YF0b0MlxCemPgCPdIioBa/qsgmy4/s6LpZ2JtUG
30+ 7+KBOJIBxuzt8k2XtfRK7k8HBL5v3pQI6IqgooN6cq/M9IOWges1RwLTsMcUbISm
31+ pSOGIC57XmreGiOQik3IlWLYaDbo5nOhzhGtnz6FlAOscW3guYuMBiPjYnTERXNz
32+ 1rwx1dHM+t+K2/7poB477RoBEHeLYkEF2JkxVZAXdAg+5PKkMj+Cd/U867t83mDG
33+ OQIDAQAB
2734-----END PUBLIC KEY-----
2835` )
2936
@@ -41,7 +48,7 @@ func main() {
4148 if strings .Contains (errMsg , "verification error" ) {
4249 println ("FAIL" )
4350 } else {
44- println (errMsg )
51+ println ("PASS" )
4552 }
4653 }
4754 }()
@@ -51,11 +58,11 @@ func main() {
5158}
5259
5360func getVerfiyInfo () * VerifyInfo {
54- // Write your own hash method and message here.
55- hashType , hash := getHash ("sha3-512" , []byte ("f39476262640eebefde1bb5ede9a0fc721ab7d9d269002ce95fa89dcbc201b69 " ))
61+ // Write your own hash method and message(key) here.
62+ hashType , hash := getHash ("sha3-512" , []byte ("95e156395687128711f29b68fbc44573667bdfc5f0d65010cb0555b62138d830 " ))
5663
5764 // Write your own signature here.
58- signatureBase64 := "qJrXQVeoGmoObRj4cqAPuhGRanj1yebFAwP6lxRCCUNqN4pgEv8qiRJXZGJP2ky8dtI67aOx48ij8vbUomxl4a3wEvyxXym1KHAd4vVObw393VQYG5nbKvPAVENQlqfJo3MnkYtTR/B4h3zVj1BQjBKE+kGx2J/4i4W9dnuIOAbtcs05dEWr8woE/JFa4LcFfHv+jJp0Exok5oPxIZ8paFq7/CkNlO91b+W62th35gh4e2bqgCEXdwUifA4I2H0LyuEPscuc2yrqYC0Ve+yQQ58c6g7HLW2SXyCJnXbpcDebMtWeXfp8468iQHj2UE4ykzmrnprQ2jOrnIMv62rF4A =="
65+ signatureBase64 := "upagNzGSL3ZqCsxApgG8yiG/x1c+ZZBJgNtzvZR2KYVLP60+hAr5WcnZ129PG486rl6r2kLMwq8jIu4CUSvwpIblqCILWk7kxQzlei+//7JweQxLbkXfWgdmwA1mUflBXyqQ4vAFyL4w3g44GilInp0nT/iswdAFiCgb5RaK8xkmq+HDeghQWHsNxkPjf7ffDU8wnaLxAK0w4vwYm8BdhzKvEyRFbiTFohLwa4F9byVGrTIAEj53CQ0VvbKwQT6SH+LUVAp5Wr5vMPAREebx/0X5Yy63EuXWvCdZwG64n/TAm4qFhMThrtX+8h+zyf+CViDSZ1xAwkPNtfaQ3scN7g =="
5966 signature , err := base64 .StdEncoding .DecodeString (signatureBase64 )
6067
6168 if err != nil {
@@ -84,7 +91,7 @@ func Verify(v *VerifyInfo) {
8491 }
8592
8693 opts := & rsa.PSSOptions {
87- SaltLength : rsa .PSSSaltLengthAuto ,
94+ SaltLength : rsa .PSSSaltLengthEqualsHash ,
8895 Hash : v .hashType ,
8996 }
9097
0 commit comments