def testF01DSADirectPrimary(self): "crypto.signature: sign() v4 DSA direct (self signature on primary)" seckey_d = read_test_file(['pgpfiles', 'key', 'DSAELG1.sec.gpg']) seckeypkt = list_pkts(seckey_d)[0] sigtype = SIG_DIRECT sigpkt = sign(sigtype, seckeypkt, seckeypkt, passphrase="test") verified = verify(sigpkt, seckeypkt, seckeypkt) self.assertEqual(1, verified)
def testF01DSADirectPrimary(self): "crypto.signature: sign() v4 DSA direct (self signature on primary)" seckey_d = read_test_file(['pgpfiles','key','DSAELG1.sec.gpg']) seckeypkt = list_pkts(seckey_d)[0] sigtype = SIG_DIRECT sigpkt = sign(sigtype, seckeypkt, seckeypkt, passphrase="test") verified = verify(sigpkt, seckeypkt, seckeypkt) self.assertEqual(1, verified)
def testE04SignatureCreationV4RSAText(self): "crypto.signature: sign() v4 RSA no subpkts TEXT" seckey_d = read_test_file(['pgpfiles','key','RSA1.sec.gpg']) seckeypkt = list_pkts(seckey_d)[0] msg = 'testmessage\r\nyaddaboo\n\nsdfll\r\n' sigtype = SIG_TEXT sigpkt = sign(sigtype, msg, seckeypkt, passphrase="test") verified = verify(sigpkt, msg, seckeypkt) self.assertEqual(1, verified)
def testE01SignatureCreationV4DSABinaryNoPass(self): "crypto.signature: sign() v4 DSA no pass, no subpkts BINARY" seckey_d = read_test_file(['pgpfiles','key','DSAELG1.sec.nopass.gpg']) seckeypkt = list_pkts(seckey_d)[0] msg = 'testmessage' sigtype = SIG_BINARY sigpkt = sign(sigtype, msg, seckeypkt) verified = verify(sigpkt, msg, seckeypkt) self.assertEqual(1, verified)
def testE04SignatureCreationV4RSAText(self): "crypto.signature: sign() v4 RSA no subpkts TEXT" seckey_d = read_test_file(['pgpfiles', 'key', 'RSA1.sec.gpg']) seckeypkt = list_pkts(seckey_d)[0] msg = 'testmessage\r\nyaddaboo\n\nsdfll\r\n' sigtype = SIG_TEXT sigpkt = sign(sigtype, msg, seckeypkt, passphrase="test") verified = verify(sigpkt, msg, seckeypkt) self.assertEqual(1, verified)
def testG01CreateUIDRevocation(self): "crypto.signature: sign() local certification revocation (0x30)" key_d = read_test_file(['pgpfiles','key','DSAELG1.sec.gpg']) pkts = list_pkts(key_d) seckey, uid = pkts[0], pkts[1] sigtype = SIG_CERTREVOC opts = {'passphrase':'test', 'primary':seckey} sigpkt = sign(sigtype, uid, seckey, **opts) verified = verify(sigpkt, uid, seckey) self.assertEqual(True, verified)
def testF02DSADirectSubkey(self): "crypto.signature: sign() v4 DSA direct (self signature on subkey)" seckey_d = read_test_file(['pgpfiles','key','DSAELG1.sec.gpg']) pkts = list_pkts(seckey_d) seckeypkt, subkeypkt = pkts[0], pkts[3] sigtype = SIG_DIRECT opts = {'passphrase':'test', 'primary':seckeypkt} sigpkt = sign(sigtype, subkeypkt, seckeypkt, **opts) verified = verify(sigpkt, subkeypkt, seckeypkt) self.assertEqual(1, verified)
def testG01CreateUIDRevocation(self): "crypto.signature: sign() local certification revocation (0x30)" key_d = read_test_file(['pgpfiles', 'key', 'DSAELG1.sec.gpg']) pkts = list_pkts(key_d) seckey, uid = pkts[0], pkts[1] sigtype = SIG_CERTREVOC opts = {'passphrase': 'test', 'primary': seckey} sigpkt = sign(sigtype, uid, seckey, **opts) verified = verify(sigpkt, uid, seckey) self.assertEqual(True, verified)
def testF02DSADirectSubkey(self): "crypto.signature: sign() v4 DSA direct (self signature on subkey)" seckey_d = read_test_file(['pgpfiles', 'key', 'DSAELG1.sec.gpg']) pkts = list_pkts(seckey_d) seckeypkt, subkeypkt = pkts[0], pkts[3] sigtype = SIG_DIRECT opts = {'passphrase': 'test', 'primary': seckeypkt} sigpkt = sign(sigtype, subkeypkt, seckeypkt, **opts) verified = verify(sigpkt, subkeypkt, seckeypkt) self.assertEqual(1, verified)
def testE01SignatureCreationV4DSABinaryNoPass(self): "crypto.signature: sign() v4 DSA no pass, no subpkts BINARY" seckey_d = read_test_file( ['pgpfiles', 'key', 'DSAELG1.sec.nopass.gpg']) seckeypkt = list_pkts(seckey_d)[0] msg = 'testmessage' sigtype = SIG_BINARY sigpkt = sign(sigtype, msg, seckeypkt) verified = verify(sigpkt, msg, seckeypkt) self.assertEqual(1, verified)
def testF03DSADirectForeign(self): "crypto.signature: sign() v4 DSA direct on foreign primary key" targetkey_d = read_test_file(['pgpfiles','key','DSAELG3.pub.gpg']) seckey_d = read_test_file(['pgpfiles','key','DSAELG1.sec.gpg']) targetkeypkt = list_pkts(targetkey_d)[0] seckeypkt = list_pkts(seckey_d)[0] sigtype = SIG_DIRECT opts = {'passphrase':'test', 'primary':targetkeypkt} sigpkt = sign(sigtype, targetkeypkt, seckeypkt, **opts) verified = verify(sigpkt, targetkeypkt, seckeypkt, primary=targetkeypkt) self.assertEqual(1, verified)
def testE08SignatureCreationV3RSATextSubpackets(self): "crypto.signature: sign() v3 RSA with hashed subpkts TEXT" import time seckey_d = read_test_file(['pgpfiles','key','RSA1.sec.gpg']) seckeypkt = list_pkts(seckey_d)[0] msg = 'testmessage\r\nyaddaboo\n\nsdfll\r\n' sigtype = SIG_TEXT created = int(time.time()) - 5000 opts = {'passphrase':'test', 'version':3, 'created':created, 'keyid':seckeypkt.body.id} sigpkt = sign(sigtype, msg, seckeypkt, **opts) verified = verify(sigpkt, msg, seckeypkt) self.assertEqual(1, verified)
def testE06SignatureCreationV4RSABinarySubpackets(self): "crypto.signature: sign() v4 RSA with hashed subpkts BINARY" seckey_d = read_test_file(['pgpfiles','key','RSA1.sec.gpg']) seckeypkt = list_pkts(seckey_d)[0] msg = 'testmessage\r\nyaddaboo\n\nsdfll\r\n' sigtype = SIG_BINARY created = int(time.time()) - 5000 subpkt_created = create_SignatureSubpacket(SIGSUB_CREATED, created) subpkt_keyid = create_SignatureSubpacket(SIGSUB_SIGNERID, seckeypkt.body.id) opts = {'passphrase':'test', 'hashed_subpkts':[subpkt_created], 'unhashed_subpkts':[subpkt_keyid]} sigpkt = sign(sigtype, msg, seckeypkt, **opts) verified = verify(sigpkt, msg, seckeypkt) self.assertEqual(1, verified)
def testF03DSADirectForeign(self): "crypto.signature: sign() v4 DSA direct on foreign primary key" targetkey_d = read_test_file(['pgpfiles', 'key', 'DSAELG3.pub.gpg']) seckey_d = read_test_file(['pgpfiles', 'key', 'DSAELG1.sec.gpg']) targetkeypkt = list_pkts(targetkey_d)[0] seckeypkt = list_pkts(seckey_d)[0] sigtype = SIG_DIRECT opts = {'passphrase': 'test', 'primary': targetkeypkt} sigpkt = sign(sigtype, targetkeypkt, seckeypkt, **opts) verified = verify(sigpkt, targetkeypkt, seckeypkt, primary=targetkeypkt) self.assertEqual(1, verified)
def testE08SignatureCreationV3RSATextSubpackets(self): "crypto.signature: sign() v3 RSA with hashed subpkts TEXT" import time seckey_d = read_test_file(['pgpfiles', 'key', 'RSA1.sec.gpg']) seckeypkt = list_pkts(seckey_d)[0] msg = 'testmessage\r\nyaddaboo\n\nsdfll\r\n' sigtype = SIG_TEXT created = int(time.time()) - 5000 opts = { 'passphrase': 'test', 'version': 3, 'created': created, 'keyid': seckeypkt.body.id } sigpkt = sign(sigtype, msg, seckeypkt, **opts) verified = verify(sigpkt, msg, seckeypkt) self.assertEqual(1, verified)
def testE06SignatureCreationV4RSABinarySubpackets(self): "crypto.signature: sign() v4 RSA with hashed subpkts BINARY" seckey_d = read_test_file(['pgpfiles', 'key', 'RSA1.sec.gpg']) seckeypkt = list_pkts(seckey_d)[0] msg = 'testmessage\r\nyaddaboo\n\nsdfll\r\n' sigtype = SIG_BINARY created = int(time.time()) - 5000 subpkt_created = create_SignatureSubpacket(SIGSUB_CREATED, created) subpkt_keyid = create_SignatureSubpacket(SIGSUB_SIGNERID, seckeypkt.body.id) opts = { 'passphrase': 'test', 'hashed_subpkts': [subpkt_created], 'unhashed_subpkts': [subpkt_keyid] } sigpkt = sign(sigtype, msg, seckeypkt, **opts) verified = verify(sigpkt, msg, seckeypkt) self.assertEqual(1, verified)