From c80b30f070d7380c1a073643267607ad1d4c6b3e Mon Sep 17 00:00:00 2001 From: Lex Berezhny Date: Wed, 22 Dec 2021 13:17:51 -0500 Subject: [PATCH] test another signed claim by ytsync --- tests/unit/wallet/test_schema_signing.py | 72 ++++++++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/tests/unit/wallet/test_schema_signing.py b/tests/unit/wallet/test_schema_signing.py index 2b2519d69..901c40adb 100644 --- a/tests/unit/wallet/test_schema_signing.py +++ b/tests/unit/wallet/test_schema_signing.py @@ -120,6 +120,78 @@ class TestValidatingOldSignatures(AsyncioTestCase): self.assertTrue(stream.is_signed_by(channel, ledger)) + def test_another_signed_claim_made_by_ytsync(self): + stream_tx = Transaction(unhexlify( + b'010000000185870fabdd6bd2d57749afebc0b239e8d0ebeb6f3647d6cfcabd5ea2200ac632010000006b4' + b'83045022100877c86de154e39f21959bc2157865071924adb7930a7a8910714f27398cd2689022074270f' + b'074ae260fff319d5e0c030691821bc75b82ff0179898ac3eaeda4123eb01210200328f7f001f22ea25d72' + b'ba37379e3065020c4d8371d9199dc4e3770084e26b9ffffffff0240420f0000000000fdcc05b527746865' + b'2d637269746963616c2d6e6565642d666f722d696e646570656e64656e742d6d656469614d85050191bba' + b'd064bdc455b9ebddeeb559686b13f027615384ec7c9d981c3c21a6e3d723a654e86bd707d21174c4f697f' + b'5080cf367a3b2dfc059e6cc14a962631df69b9886f4d8b97cb339b14633966fd5ac7d75edacdf30ac5010' + b'a90010a304af34d1c1467ebfc8785e2a49c7d5bec3cc6db94db858f1dcf95e4256564fba586d6e01f496d' + b'f2a34344e021d2725ffd12197468652d637269746963616c2d6e6565642d666f722e6d703418ee97eac10' + b'22209766964656f2f6d70343230ba13e6b667a9acef7e1b1caa88b9eb1d4680dea84b1d3e838266595805' + b'ab3343855c20af35012f942ce0d5111ce080331a1f436f7079726967687465642028636f6e74616374207' + b'075626c69736865722928e2e3c98d065a0908800f10b80818f314423954686520437269746963616c204e' + b'65656420666f7220496e646570656e64656e74204d65646961207c20476c656e6e20477265656e77616c6' + b'44af006496e636c7564657320616e20696e74726f64756374696f6e20627920546f6d20576f6f64732e20' + b'5265636f7264656420696e204c616b65204a61636b736f6e2c2054657861732c206f6e20446563656d626' + b'57220342c20323032312e0a0a526f6e205061756c27732074776f2063616d706169676e7320666f722070' + b'7265736964656e7420283230303820616e64203230313229207765726520776174657273686564206d6f6' + b'd656e747320666f72206c6962657274792d6d696e6465642070656f706c652061726f756e642074686520' + b'776f726c642e205468652022526f6e205061756c205265766f6c7574696f6e22e2809463656e746572656' + b'42061726f756e642068697320756e64696c75746564206d657373616765206f662070656163652c207072' + b'6f70657274792c20616e64206d61726b657473e280946368616e6765642074686520776179206d696c6c6' + b'96f6e732074686f756768742061626f75742074686520416d65726963616e20656d7069726520616e6420' + b'74686520416d65726963616e2066696e616e6369616c2073797374656d2e2044722e205061756c2773206' + b'66f637573206f6e2063656e7472616c2062616e6b696e6720616e6420666f726569676e20706f6c696379' + b'2063617567687420706f6c6974696369616e7320616e642070756e64697473206f66662067756172642c2' + b'0666f7263696e67207468656d20746f20736372616d626c6520666f72206578706c616e6174696f6e7320' + b'6f66206f7572204d6964646c65204561737420706f6c69637920616e6420536f766965742d7374796c652' + b'063656e7472616c20706c616e6e696e6720617420746865204665642e20506f6c697469637320696e2041' + b'6d657269636120686173206e6f74206265656e207468652073616d652073696e636520746865202247697' + b'56c69616e69206d6f6d656e742220616e642022456e6420746865204665642e222054686520526f6e2050' + b'61756c205265766f6c7574696f6e2077617320626f7468206120706f6c69746963616c20616e642063756' + b'c747572616c207068656e6f6d656e6f6e2e0a0a303a303020496e74726f64756374696f6e20627920546f' + b'6d20576f6f64730a343a323720476c656e6e20477265656e77616c640a2e2e2e0a68747470733a2f2f777' + b'7772e796f75747562652e636f6d2f77617463683f763d4e4b70706d52467673453052292a276874747073' + b'3a2f2f7468756d626e61696c732e6c6272792e636f6d2f4e4b70706d5246767345305a046e6577735a096' + b'3617468656472616c5a0f636f72706f72617465206d656469615a08637269746963616c5a0f676c656e6e' + b'20677265656e77616c645a0b696e646570656e64656e745a0a6a6f75726e616c69736d5a056d656469615' + b'a056d697365735a08706f6c69746963735a0a70726f706167616e64615a08726f6e207061756c5a057472' + b'757468620208016d7576a9140969964db5b5744e2d2d0de797f5904efc80d02188acc8814200000000001' + b'976a91439086597f9cfc066f4749b8bb245bf561714fda888ac00000000' + )) + stream = stream_tx.outputs[0] + + channel_tx = Transaction(unhexlify( + b'01000000011d47b91b409b317e427adb87ec4b0bfc9fad2abf6ec3296f41918e4b3cb9d4e7010000006a4' + b'7304402205e53ef7fc643ed00f0240dd1c3302b82141f481ed071cbcdd6b6ec6166ffd4e002203eb28ce6' + b'39f80253f66ff3bf45288a60133d7f5625217d1ecf3b57da440b559f012103b852d61074eb995b702a800' + b'f284e937ece4fea7f023beb70e6b0d1bff36d64b9ffffffff0240420f0000000000fdde01b506406d6973' + b'65734db801001299010a583056301006072a8648ce3d020106052b8104000a034200047ddb1d639d7bdd0' + b'953d9ab0bf9e971a632f85f9823c1d85780aa3e0a702b503c2962d00f67360e803514bf5864710925aacb' + b'effd9597532c7e60eb21b4e3fd03223d2a3b68747470733a2f2f7468756d626e61696c732e6c6272792e6' + b'36f6d2f62616e6e65722d55436d54362d43684b7061694956753266684549734e7451420a6d697365736d' + b'656469614ad401466561747572656420766964656f732066726f6d20746865204d6973657320496e73746' + b'9747574652e20546865204d6973657320496e737469747574652070726f6d6f7465732041757374726961' + b'6e2065636f6e6f6d6963732c2066726565646f6d2c20616e6420706561636520696e20746865206c69626' + b'572616c20696e74656c6c65637475616c20747261646974696f6e206f66204c756477696720766f6e204d' + b'69736573207468726f7567682072657365617263682c207075626c697368696e672c20616e64206564756' + b'36174696f6e2e52362a3468747470733a2f2f7468756d626e61696c732e6c6272792e636f6d2f55436d54' + b'362d43684b7061694956753266684549734e74516d7576a914cd77ded2400e6569f03a2580244bb395f95' + b'f91fc88ac344ab701000000001976a914cabdbfce726d2fda92ffe0041a4303f6c6c34cda88ac00000000' + )) + channel = channel_tx.outputs[0] + + ledger = Ledger({ + 'db': Database(':memory:'), + 'headers': Headers(':memory:') + }) + + self.assertTrue(stream.is_signed_by(channel, ledger)) + def test_claim_signed_using_ecdsa_validates_with_coincurve(self): channel_tx = Transaction(unhexlify( "0100000001b91d829283c0d80cb8113d5f36b6da3dfe9df3e783f158bfb3fd1b2b178d7fc9010000006b48"