Skip to content

Commit bd3ed54

Browse files
committed
win_test.go: fix bug in TestWinRSA about sign, finish verify.
1 parent 5cab358 commit bd3ed54

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

wincrypto/win_test.go

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,60 @@ func TestWinRSA(t *testing.T) {
6060

6161
signature, err := rsa.SignPKCS1v15(rand.Reader, privateKey, crypto.SHA256, digest[:])
6262
require.NoError(t, err)
63+
signature = reverseBytes(signature)
6364

6465
// this output will move to the test of Gleam-RT
6566
spew.Dump(signature)
6667
})
6768

6869
t.Run("verify", func(t *testing.T) {
70+
key, err := os.ReadFile("testdata/privatekey.sign")
71+
require.NoError(t, err)
72+
73+
privateKey, err := ImportRSAPrivateKeyBlob(key)
74+
require.NoError(t, err)
6975

76+
message := []byte{1, 2, 3, 4}
77+
digest := sha256.Sum256(message)
78+
79+
signature := []byte{
80+
0xF4, 0x19, 0x52, 0x24, 0xB2, 0x53, 0x7D, 0x9B,
81+
0xE9, 0xAD, 0x8F, 0x64, 0x6F, 0x42, 0xFC, 0x12,
82+
0xA2, 0x87, 0x29, 0x24, 0x5B, 0xB4, 0x7F, 0x63,
83+
0xB1, 0xED, 0x88, 0x33, 0xA7, 0x46, 0x2E, 0x6B,
84+
0xDF, 0x79, 0x51, 0xC4, 0x79, 0xD1, 0x0C, 0xA4,
85+
0x1A, 0x43, 0x81, 0x72, 0x3B, 0xF8, 0x01, 0x64,
86+
0x0D, 0x43, 0x7E, 0x36, 0x68, 0x06, 0x8C, 0xCA,
87+
0x7A, 0x06, 0xA8, 0xDA, 0xEE, 0x6B, 0xD3, 0x9C,
88+
0xDC, 0x1A, 0x71, 0x8D, 0x4C, 0x90, 0xE7, 0x0D,
89+
0x35, 0x5E, 0x3B, 0x7D, 0x39, 0x04, 0x6D, 0x42,
90+
0x99, 0xFD, 0x3E, 0xE2, 0xE5, 0x7B, 0x70, 0x84,
91+
0x9A, 0x2D, 0xD3, 0x07, 0x23, 0x01, 0x08, 0x79,
92+
0x9F, 0x54, 0x84, 0xEE, 0xC4, 0x85, 0x30, 0x4F,
93+
0x3F, 0x2C, 0xBD, 0x85, 0xC4, 0x84, 0xF0, 0x81,
94+
0xD0, 0x2A, 0xF2, 0x6F, 0x99, 0xB4, 0xE1, 0x3B,
95+
0x08, 0x45, 0xE4, 0xD1, 0xA1, 0x51, 0x9F, 0x2C,
96+
0x81, 0x49, 0xE1, 0xDF, 0x59, 0x51, 0x6D, 0xB7,
97+
0x11, 0x4C, 0xDD, 0x9C, 0x27, 0xE0, 0x4A, 0x09,
98+
0x35, 0xCD, 0xDF, 0x8C, 0xB7, 0x74, 0xF6, 0x91,
99+
0x67, 0xD8, 0x7B, 0x34, 0x0A, 0x6E, 0x7F, 0xD9,
100+
0x99, 0x3A, 0xD7, 0xA4, 0xEE, 0xBA, 0xA4, 0x5A,
101+
0xBE, 0x36, 0xEB, 0x89, 0x5F, 0x00, 0x85, 0xF8,
102+
0x56, 0xE0, 0x88, 0x8A, 0x5F, 0x11, 0xFE, 0xBD,
103+
0x49, 0x2F, 0x31, 0x3C, 0xED, 0xDE, 0xAD, 0x1A,
104+
0x2F, 0x85, 0x02, 0xA0, 0xEC, 0x8A, 0xB3, 0x20,
105+
0x5B, 0xE8, 0x46, 0x25, 0x3A, 0x9D, 0x5D, 0x0C,
106+
0x3F, 0x26, 0x9D, 0x7A, 0x08, 0x95, 0x28, 0x1D,
107+
0xC7, 0x76, 0x97, 0xCD, 0x11, 0x09, 0xE1, 0xC3,
108+
0xFB, 0x28, 0x08, 0x37, 0xFA, 0x77, 0x56, 0xC4,
109+
0x71, 0x35, 0x99, 0xCB, 0x8F, 0x60, 0xDE, 0x5B,
110+
0x22, 0xE1, 0x86, 0x90, 0x80, 0xDD, 0x51, 0x94,
111+
0x08, 0x1B, 0x2C, 0xAD, 0x6B, 0xA6, 0xA9, 0x87,
112+
}
113+
signature = reverseBytes(signature)
114+
115+
err = rsa.VerifyPKCS1v15(&privateKey.PublicKey, crypto.SHA256, digest[:], signature)
116+
require.NoError(t, err)
70117
})
71118

72119
t.Run("encrypt", func(t *testing.T) {

0 commit comments

Comments
 (0)