Change verification system, add tests for issue 11 (#13)
This commit is contained in:
parent
781681b548
commit
b30f047e53
5 changed files with 143 additions and 4 deletions
|
|
@ -142,15 +142,15 @@ func asymmetricDecrypt(
|
|||
return nil, constants.SIGNATURE_NOT_SIGNED, err
|
||||
}
|
||||
|
||||
if verifyKey != nil {
|
||||
processSignatureExpiration(messageDetails, verifyTime)
|
||||
}
|
||||
|
||||
body, err := ioutil.ReadAll(messageDetails.UnverifiedBody)
|
||||
if err != nil {
|
||||
return nil, constants.SIGNATURE_NOT_SIGNED, err
|
||||
}
|
||||
|
||||
if verifyKey != nil {
|
||||
processSignatureExpiration(messageDetails, verifyTime)
|
||||
}
|
||||
|
||||
if verifyKey != nil {
|
||||
verifyStatus, verifyError := verifyDetailsSignature(messageDetails, verifyKey)
|
||||
|
||||
|
|
|
|||
|
|
@ -102,3 +102,35 @@ func TestBinaryMessageEncryption(t *testing.T) {
|
|||
assert.Exactly(t, constants.SIGNATURE_OK, ver.GetVerification())
|
||||
assert.Exactly(t, true, ver.IsValid())
|
||||
}
|
||||
|
||||
func TestIssue11(t *testing.T) {
|
||||
myKeyring, err := pgp.BuildKeyRingArmored(readTestFile("issue11_privatekey", false))
|
||||
if err != nil {
|
||||
t.Fatal("Expected no error while bulding private keyring, got:", err)
|
||||
}
|
||||
|
||||
err = myKeyring.UnlockWithPassphrase("1234");
|
||||
if err != nil {
|
||||
t.Fatal("Expected no error while unlocking private keyring, got:", err)
|
||||
}
|
||||
|
||||
senderKeyring, err := pgp.BuildKeyRingArmored(readTestFile("issue11_publickey", false))
|
||||
if err != nil {
|
||||
t.Fatal("Expected no error while building public keyring, got:", err)
|
||||
}
|
||||
|
||||
assert.Exactly(t, []uint64{0x643b3595e6ee4fdf}, senderKeyring.KeyIds())
|
||||
|
||||
pgpMessage, err := NewPGPMessageFromArmored(readTestFile("issue11_message", false))
|
||||
if err != nil {
|
||||
t.Fatal("Expected no error while unlocking private keyring, got:", err)
|
||||
}
|
||||
|
||||
plainMessage, verification, err := myKeyring.Decrypt(pgpMessage, senderKeyring, 0)
|
||||
if err != nil {
|
||||
t.Fatal("Expected no error while decrypting/verifying, got:", err)
|
||||
}
|
||||
|
||||
assert.Exactly(t, "message from sender", plainMessage.GetString())
|
||||
assert.Exactly(t, true, verification.IsValid())
|
||||
}
|
||||
|
|
|
|||
18
crypto/testdata/issue11_message
vendored
Normal file
18
crypto/testdata/issue11_message
vendored
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
wcBMA4JttJqRS09RAQgAY9TSYXHAT76rrpihX3db4BLnnSjPqWhxysWE8HI6d5tx
|
||||
ZLjxDGE81CO/t0hpokwId7g2GImLHL2LRiwn/V+7AZcF8byX+gIpQsG3TLY/LwZ+
|
||||
i4FKG7WwZzM50nUNKt6kczvF7QVDd4GLB6GgrvoTvwAhqRGs7EuMHTNAciq7AgBA
|
||||
D6XZbzcG77i367+X6nRLNMujH+CNNlKNKkV7bIQYzHteplQUvDrF+e4+lOOVuc+r
|
||||
ZUKgEyIJrwSUoTU01tJD8M0iRIlKQsBrO7QpjGNna5HDi9dG6UQcKX2wuvkxajHt
|
||||
3UcPDNjNKapXpshUydnmt6PXnW5IV0aOaZcS9l95SNLAsgGuStjEic6pru368BYO
|
||||
S3j63CG24KiB55eNMdMhZhjgR8ngHDGw/rAWKZKJ0DjI+UV7FJP3GS/y1/KjGEv1
|
||||
ii7FqPIdiKAUO2f5gtBsstyNmaKpwswP5XP7n9sf76rsoSr2yYSc+nWuAOpyTL0c
|
||||
Q69ln+UvxvRih6x8h7Cbn6N6ex7Jo7p9KMgXJ3gYAOL8WgeF2ZYCrdqNFvH8ManY
|
||||
kqZgnrng8SvTaEpLVIwX8heugVrgT6wdQBpIhmuPIR2jez9Pv8fpg21HHuGId2PV
|
||||
wl7LqgxAWuDBa9BXilR8gR7G6AlK37KUgzAJ6E0/yzQ7RLaECtSzVOZZq6p99tRi
|
||||
SEQxKGd+oTAnsfEm2stTLHblvHxYn2tEKc2pv+v962CoDz4+iNJQdonBaDhRP8jw
|
||||
1BkzrhNvMZGl9XTO02SUboRufyQsOLq7ba7kmNoLSFOsdj5ugSCAHGFra2zf1Drt
|
||||
jqkiw78nef9bedQ5VMYcQMq7UGo=
|
||||
=zA0T
|
||||
-----END PGP MESSAGE-----
|
||||
60
crypto/testdata/issue11_privatekey
vendored
Normal file
60
crypto/testdata/issue11_privatekey
vendored
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
||||
Version: GopenPGP 0.0.1 (ddacebe0)
|
||||
Comment: https://gopenpgp.org
|
||||
|
||||
xcMGBFz2c2cBCACddbzJF5GCd5NjCw+LX/Uva5Y9Rjxawtp9wlYsec7G1w4Tiqdb
|
||||
KOojOKEJPVhbJeHnZkLpW/sbgFJUnI+ogZAGAOcbf+3+AmRcliOxc9xGFjNOE8xv
|
||||
OFUvgabjFJ1k/VnwmGHfahMJ4OaPxN6ZR8VPveDJfJyF2JVpdvfpG70jSPeMn16U
|
||||
nr2JiKGN0/3Y3NoVSp9x2vHQhTi9XAd3/1Rv6UzgJHu2rQBrwfcGvNmeRoMdpQDu
|
||||
tL6QnhSNcVuGj/funXJLGJREFPmyrpnNOn40l46vpITmkkYKV+bThUWYy3ryFe52
|
||||
+bbErQX/DPJbfzn1UTiodOfW0LlrTZF2UULDABEBAAH+CQMIkhKcZjGfcLlgndyK
|
||||
2dbbmEjigl1LX+5JE4wlXhVjch0bctn5isAGtYyYQ0a+K6OjrAh6xN8E+K+utq+5
|
||||
zWrCeddWVH+WOjqrYxTR9bcRcLGy9Ofuqi9aCD+qalV+stLzq5iSJecBuoatleQI
|
||||
DwvZ634DIcRibnqm22FMjeBTP4P/B58pTKNWRCD9HrD7p5JQ+HfUZGmvx742Ft2x
|
||||
hJo2vnkSKnGre5V1L6RpWvogX7JuxeZSbbYSdJ/cJ55hfQykeN9CkBpscNXr0UeM
|
||||
dpqAT2udsAUHW1tbhd7lMgRJ2JQEVbyR8WPg/B2dV5RJXxKgMsr+g+L47MkLtcfF
|
||||
tmmzgX6brSqiUkzN1TYE+HSKcgz8PSeflaaZh1ngThGXCjOEdTI00gUeCSNeQEHP
|
||||
Yka27fnVkAquhcOc+8kIDoWloEWqXX53rtIkknsPTljs9oR5EdrivGEKVHuwpBoI
|
||||
CYf1ASDqnhrN+Bcre8lc9rYA1Qm3qV2bkrVneMXrU0kf6N4Jfu+/00ipfSDVn6Cr
|
||||
gjIOQcjYCpbvIB8qDWRNWpjSD7t9Emil7ThNaUd0WK09njoxeBnQn3ymOtRRhfHG
|
||||
ZLhXdb5OQSiMJ3wl6b15C/ka5KIp5u/3yDLklBDr4ObhRNj6yp0MIhHz8RXlk2++
|
||||
nTeBQTJT8TApJUE2z9fyIegO7751H3x4FQF90jpLGeXexpmu5i59n3+f8OtEOPrn
|
||||
PllXcn/0t6rRT5NN4C12jVt8dhgHuWova6x0bs1EG4bWVCdRkNCLCgqMjwgjUiu5
|
||||
JLz7x+9EtPKMsuue6Jh6SOWK0e2wQ7J6WH7EQXleXOlE8jMPwjHlhPslly2V62Qh
|
||||
nUV6gJ+ThzWmGdrp7NoKApfkA180lfe6dwU8lS1ds+IbvAuwCjkVAkeAn180bQ73
|
||||
eJLUAHWBphwdzS91c2VyMS5uYW1lQGhvdG1haWwuY29tIDx1c2VyMS5uYW1lQGhv
|
||||
dG1haWwuY29tPsLAaAQTAQgAHAUCXPZzZwkQKk019iASvDsCGwMCGQECCwkCFQgA
|
||||
AObPCAALuflJpipyXvjqMfU9yd4qe4KxXhVc88Ui2ozeUUnGff94vC3/ViWcB9dF
|
||||
K4WSm/mi0v98dc007QhD5/XSsq5GoxINVAiysivggZu6aZusiUDX/lOPK1Zs+qdH
|
||||
udys/f2e1HW2rvNgur7nxXCuqMbkXWnknPpnGwy2tGWuIjwj9xpSmjE4Psk6/dQH
|
||||
Fk//oD1VPdT2FUyd0yyAkDvZ6Z0d2OJZXORa+vIvj9pUBDc9Di0Nsrx0n0s551hB
|
||||
hEWjYAnBO//1kh/xZ45PlkRtdZkizpP6BI1KaB2ZDl7tX+EBVQDIEO7mg4TnIkWB
|
||||
4xWV+6GWklIpXwiUDrrDjt8RnzTfx8MGBFz2c2cBCADHgEFVouZHpN9FYjMckql+
|
||||
SIQWzTpQL8WdnIdAexoxDXma5KnvTYXFoKzA7aY30Euq/r8Dxxa/vbP23pgOJyCc
|
||||
34QlGCAfNQogacMaXoxkJO9oImlVvoIfg3a65izfnvRsK7dxAF/2MsRs4J89XmzF
|
||||
yAg7+xG8o2mA0reUPv0r+8bXaaJxlpfdcvISaU2AF80DetywiQ37bcQzQGeArEoo
|
||||
AUOEGhwezFNev7OuL0y+FJ0Ys1d3UcQwmWNSD8DOFYe8r8klgDPZmnosrH7zvtQe
|
||||
KEOq2/lv0G5L7HZDuUzkFG9uUeA5UiBbBryaP2XzTxlMJDYOrXaOWI80wkxW5Fbr
|
||||
ABEBAAH+CQMIoIATh1Zvl7hg7+iDFgHBNjzqSxx84TyxSnoymXSfAUS8JfeEFV1x
|
||||
0YfM4pxUIr/PgU/iUzM+T7x3LVZVMEGo+Mpl9D2t4W91CYdbJtfPBr+ivqX6VQPC
|
||||
47vG68VNpEuOSk1GnYx8dmkT6YLxnyzYkYXHDIpfJJ3wA7relt3XOt/oExiuJdKH
|
||||
HdNawfS2mpfnslN/NTll8dDQzIjJBjdqWM+w+MaPbtyjCqpvk+EXnYnOYuYV4ejk
|
||||
aIJtiI4XtoRoov/a6OKk+4dRy+iHy8gfmiBxHrTb7KZCyMvT1xM27/UzAXiX8Pv9
|
||||
8wJRZsIhsmd74P1TrxW2X/MjfIBSu1MOKAO7wYxvGcVb0ugvjC8GNoFUBk+aOFS+
|
||||
u5nDJHgyoSAlT2othvwDKqkm7mzFPxXyxPNXpj85yBmofxif/4aKkyI5VgXsRoau
|
||||
PZ0YSSsCsV+Be0vfKAbGxHXs+e+elhL1pqbeyQbEG9WYSbbp9T+vKFanDPlSso0j
|
||||
ktVnlsLEOaSSE7oIxs9M09yQnRtYps5XFCCT2knR8A8+0z+TDaU+w9WWn9ocl3Uo
|
||||
1q6CAg/DAIShHecsRHLcSf+9+r6o64Ng0NAvOFXGaTMC3yFt2UrIV+Ari75gRzof
|
||||
GKqY9r1335kxtEsaHg9Tkq02x9L9PZTS6VuWEgNXz9BXHTJs9qX1XFhyhb8sVGah
|
||||
FMBRP7lxYoU2zD4wdugmaI6dNxCXf5qG4+sbGXJOxX+TdEk7jexeVgFe3IoEyT4p
|
||||
LqKjMfXcqppFVnRu0z2uoSf0NEHH0FRtgKjvJzN9aIFgPv96PPKU051VlfX2SbKh
|
||||
hZFBmHaDupVedBVV1Kik6eRRKhBaoSAX8Cj+UpY5a9wejXwlN/WIdUqxtTb4ZXC2
|
||||
S3GfiXtk243gEeo1i7uIrNqL47HV/ID0Yw/dAIoFwsBfBBgBCAATBQJc9nNnCRAq
|
||||
TTX2IBK8OwIbDAAAhT8IAApBZ3mc0wN+Efd4VS7WatHNAyGDGL7NGG8saqIBQ3/p
|
||||
7Cb80ql9i1gnUqKW4NDcWGTNwnEwf06tFmWZ93SwmkXYliNK4Uc/W4Lt6U5nSvby
|
||||
PfVOoqJO6NXVXrCxX83Jfp+qGbtpyuXAObPkwEpjRs3cm+FfNXYlhvP86DN6usBH
|
||||
d63ZJUPyuefvMxwAr3FJzpjKv+UQqYL6o8Hzqba3ZBtmVCnmhACBVAIQpeEKOXPz
|
||||
Zg3XO4aX4Q1lEDvIYFwI142vxMLCAwI0Vo0fEjS5sQa1DMckcpe1Gxhrbw85cS2A
|
||||
OG0zNY9+3gqrVl5G6mld763eciP7jvZdYeacR6tgccM=
|
||||
=GKOq
|
||||
-----END PGP PRIVATE KEY BLOCK-----
|
||||
29
crypto/testdata/issue11_publickey
vendored
Normal file
29
crypto/testdata/issue11_publickey
vendored
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
xsBNBFz2c2cBCADYDbvxzmxrkjM0EKEHDc00b7gPk8z9bXgEV783Qc+MJZmUb2pk
|
||||
VmBaH0d6ldJ9djJY1ljfBOakn4fGd623uYtgEJKxSQ0FiMwFfiih0hYJ84fmW7g7
|
||||
EqGlnk9dBzjYWXAOqpkHSDJlAB/rY6jKsAYgVmGQqvdF7SWST512WGoSC4A6sMIC
|
||||
KuNmQNMQ3li9O02wNgvUlZjpn7LBGuoCw9aHjQ72MXSnd4gwt6ds48A5zcXKc8ML
|
||||
TRjo2BIKli+MPyFW9uATfYFkv55KBIFk7JHL/iWhP4m1CQa9xgsoV1C81oOxUqCf
|
||||
CFqfTQ/xhUsdnhdYhsA+whE5mfTg3Hc2fBpBABEBAAHNK3VzZXIyLm5hbWVAZ21h
|
||||
aWwuY29tIDx1c2VyMi5uYW1lQGdtYWlsLmNvbT7CwGgEEwEIABwFAlz2c2cJEGQ7
|
||||
NZXm7k/fAhsDAhkBAgsJAhUIAAD2OAgAE23JjWTSiZtVinyXyuUYfG0OEaBVopBz
|
||||
lNp25dTcVEBwK/UCtiVEFfHSW4LExYWMICwQTRaE2ViWGASI//ZZZL1ADozqVrZJ
|
||||
YjaUrX50wIMjpazkTsulEdZ7bA/MvV02yyVczC0slc4Q7D70Ley0UKwDlL+1PGj8
|
||||
Bn8IWd0yBng+/weLCLN7rGCRXdgTe3K+M5enhOMhMaVXElfkEUYDnNIVs7begOWd
|
||||
NB6RAIF9e2TP9z1daj7qjzmqePq9HkykbZXSrrrQzbeYqKvdHn9PO5Mtsaf1r1DH
|
||||
OhG0FMU//ZyG+weEQnB5cuDT58+GGaf68AgNalN1e83kqJRTVvqiYc7ATQRc9nNn
|
||||
AQgAtBDZ1zTTss3tcGDRllycQlahHjMeDkDZbyk4r+h/D+xiMRhrYkgfCg8dZIef
|
||||
SJTJWfqv3BdppcdhnnSBLjFvsXmqqmPDklUM9SqmKcXRKWvQo8/MgOX4uRQJfJ2l
|
||||
uYSba6dCsCl2qHpgv73PH6BK9dllMPXCcdYZjhvKCc9AdD4rL6iVnsqtHcyWHVtZ
|
||||
JaRQWi40nE7w8idkhN9zG/i0Ty25AnaeYyywiOSmaJm0IYIdbw4FPOnLqrT7jlDF
|
||||
s77w8xrWLog5XLFrK2dW+kUBA9qHaBNQc8nlLOzWUKJm0rDnaxR1sJ9YLT0mKCNW
|
||||
RvjGfsUwhQi2095pXoMvNwjMvwARAQABwsBfBBgBCAATBQJc9nNnCRBkOzWV5u5P
|
||||
3wIbDAAAJXwIABxmfurNk66yBzlxGmhl9SirBy6RG5amJ08jcSru2LkoNnYHgmQj
|
||||
MY2iLvzC4Qw1Q3Iac3oJWHVKqiHlyVUP4PSCbMDo1HScGfKtFRRDNJmNaxQfvcAv
|
||||
dD4xa4L2rT2/ghKgIMRC7U/3XfRPKL+TZTxV5U90tjyIAPEmf+ZdCwoktrCrEo6w
|
||||
AgC5sfEcCPWww6MFWZNqEs0NvFYDsPOJRMdJFYW7BzhkUUasBbF2qNf7L7LmwnfV
|
||||
V1SvIG1FLu/+kUnZriD28dUYmbJbjb9CfZU+2m/KCkcyj/qacdODxxH0Jirta32y
|
||||
o93mjX+Os6LC02tNBzXtzMLnrpJYDDAfb2A=
|
||||
=vMgh
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
Loading…
Add table
Add a link
Reference in a new issue