@taquito/ledger-signer 17.1.0 → 17.2.0-beta-RC.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/coverage/clover.xml +7 -7
- package/coverage/coverage-final.json +4 -4
- package/coverage/lcov-report/error.ts.html +1 -1
- package/coverage/lcov-report/errors.ts.html +8 -8
- package/coverage/lcov-report/index.html +1 -1
- package/coverage/lcov-report/taquito-ledger-signer.ts.html +1 -1
- package/coverage/lcov-report/utils.ts.html +1 -1
- package/coverage/lcov-report/version.ts.html +8 -5
- package/coverage/lcov.info +1 -1
- package/dist/lib/errors.js +4 -4
- package/dist/lib/version.js +2 -2
- package/dist/lib/version.js.map +1 -1
- package/dist/taquito-ledger-signer.es6.js +6 -6
- package/dist/taquito-ledger-signer.es6.js.map +1 -1
- package/dist/taquito-ledger-signer.umd.js +6 -6
- package/dist/taquito-ledger-signer.umd.js.map +1 -1
- package/dist/types/errors.d.ts +4 -4
- package/package.json +4 -4
- package/src/errors.ts +4 -4
- package/src/version.ts +3 -2
package/coverage/clover.xml
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<coverage generated="
|
|
3
|
-
<project timestamp="
|
|
2
|
+
<coverage generated="1691616525395" clover="3.2.0">
|
|
3
|
+
<project timestamp="1691616525395" name="All files">
|
|
4
4
|
<metrics statements="167" coveredstatements="142" conditionals="43" coveredconditionals="36" methods="25" coveredmethods="17" elements="235" coveredelements="195" complexity="0" loc="167" ncloc="167" packages="1" files="4" classes="4"/>
|
|
5
|
-
<file name="errors.ts" path="/Users/
|
|
5
|
+
<file name="errors.ts" path="/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/errors.ts">
|
|
6
6
|
<metrics statements="19" coveredstatements="5" conditionals="0" coveredconditionals="0" methods="4" coveredmethods="0"/>
|
|
7
7
|
<line num="1" count="1" type="stmt"/>
|
|
8
8
|
<line num="7" count="1" type="stmt"/>
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
<line num="45" count="0" type="stmt"/>
|
|
25
25
|
<line num="46" count="0" type="stmt"/>
|
|
26
26
|
</file>
|
|
27
|
-
<file name="taquito-ledger-signer.ts" path="/Users/
|
|
27
|
+
<file name="taquito-ledger-signer.ts" path="/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/taquito-ledger-signer.ts">
|
|
28
28
|
<metrics statements="84" coveredstatements="77" conditionals="24" coveredconditionals="20" methods="13" coveredmethods="9"/>
|
|
29
29
|
<line num="8" count="1" type="stmt"/>
|
|
30
30
|
<line num="9" count="1" type="stmt"/>
|
|
@@ -111,7 +111,7 @@
|
|
|
111
111
|
<line num="225" count="2" type="stmt"/>
|
|
112
112
|
<line num="231" count="2" type="stmt"/>
|
|
113
113
|
</file>
|
|
114
|
-
<file name="utils.ts" path="/Users/
|
|
114
|
+
<file name="utils.ts" path="/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/utils.ts">
|
|
115
115
|
<metrics statements="63" coveredstatements="59" conditionals="19" coveredconditionals="16" methods="8" coveredmethods="8"/>
|
|
116
116
|
<line num="8" count="2" type="stmt"/>
|
|
117
117
|
<line num="17" count="2" type="stmt"/>
|
|
@@ -177,9 +177,9 @@
|
|
|
177
177
|
<line num="128" count="5" type="stmt"/>
|
|
178
178
|
<line num="129" count="5" type="stmt"/>
|
|
179
179
|
</file>
|
|
180
|
-
<file name="version.ts" path="/Users/
|
|
180
|
+
<file name="version.ts" path="/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/version.ts">
|
|
181
181
|
<metrics statements="1" coveredstatements="1" conditionals="0" coveredconditionals="0" methods="0" coveredmethods="0"/>
|
|
182
|
-
<line num="
|
|
182
|
+
<line num="3" count="1" type="stmt"/>
|
|
183
183
|
</file>
|
|
184
184
|
</project>
|
|
185
185
|
</coverage>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
{"/Users/
|
|
2
|
-
,"/Users/dsawali/Desktop/ecadlabs/taquito/packages/taquito-ledger-signer/src/taquito-ledger-signer.ts": {"path":"/Users/dsawali/Desktop/ecadlabs/taquito/packages/taquito-ledger-signer/src/taquito-ledger-signer.ts","statementMap":{"0":{"start":{"line":8,"column":0},"end":{"line":8,"column":93}},"1":{"start":{"line":9,"column":0},"end":{"line":9,"column":null}},"2":{"start":{"line":17,"column":0},"end":{"line":17,"column":42}},"3":{"start":{"line":18,"column":0},"end":{"line":18,"column":null}},"4":{"start":{"line":24,"column":0},"end":{"line":24,"column":82}},"5":{"start":{"line":26,"column":0},"end":{"line":26,"column":9}},"6":{"start":{"line":26,"column":9},"end":{"line":26,"column":59}},"7":{"start":{"line":30,"column":0},"end":{"line":30,"column":null}},"8":{"start":{"line":31,"column":2},"end":{"line":31,"column":null}},"9":{"start":{"line":32,"column":2},"end":{"line":32,"column":null}},"10":{"start":{"line":33,"column":2},"end":{"line":33,"column":null}},"11":{"start":{"line":34,"column":2},"end":{"line":34,"column":null}},"12":{"start":{"line":37,"column":0},"end":{"line":37,"column":9}},"13":{"start":{"line":37,"column":9},"end":{"line":37,"column":54}},"14":{"start":{"line":39,"column":30},"end":{"line":41,"column":1}},"15":{"start":{"line":40,"column":2},"end":{"line":40,"column":36}},"16":{"start":{"line":39,"column":13},"end":{"line":39,"column":30}},"17":{"start":{"line":43,"column":0},"end":{"line":43,"column":9}},"18":{"start":{"line":43,"column":9},"end":{"line":43,"column":36}},"19":{"start":{"line":88,"column":12},"end":{"line":88,"column":38}},"20":{"start":{"line":89,"column":12},"end":{"line":89,"column":27}},"21":{"start":{"line":90,"column":12},"end":{"line":90,"column":30}},"22":{"start":{"line":91,"column":12},"end":{"line":91,"column":45}},"23":{"start":{"line":77,"column":19},"end":{"line":77,"column":30}},"24":{"start":{"line":78,"column":19},"end":{"line":78,"column":45}},"25":{"start":{"line":79,"column":19},"end":{"line":79,"column":48}},"26":{"start":{"line":80,"column":19},"end":{"line":80,"column":35}},"27":{"start":{"line":81,"column":19},"end":{"line":81,"column":49}},"28":{"start":{"line":82,"column":19},"end":{"line":82,"column":48}},"29":{"start":{"line":83,"column":19},"end":{"line":83,"column":49}},"30":{"start":{"line":93,"column":4},"end":{"line":93,"column":41}},"31":{"start":{"line":94,"column":4},"end":{"line":99,"column":null}},"32":{"start":{"line":95,"column":6},"end":{"line":98,"column":8}},"33":{"start":{"line":100,"column":4},"end":{"line":102,"column":null}},"34":{"start":{"line":101,"column":6},"end":{"line":101,"column":70}},"35":{"start":{"line":106,"column":4},"end":{"line":108,"column":null}},"36":{"start":{"line":107,"column":6},"end":{"line":107,"column":29}},"37":{"start":{"line":109,"column":4},"end":{"line":111,"column":null}},"38":{"start":{"line":110,"column":6},"end":{"line":110,"column":33}},"39":{"start":{"line":112,"column":4},"end":{"line":112,"column":44}},"40":{"start":{"line":116,"column":4},"end":{"line":118,"column":null}},"41":{"start":{"line":117,"column":6},"end":{"line":117,"column":29}},"42":{"start":{"line":119,"column":27},"end":{"line":119,"column":58}},"43":{"start":{"line":120,"column":28},"end":{"line":120,"column":45}},"44":{"start":{"line":121,"column":25},"end":{"line":121,"column":69}},"45":{"start":{"line":122,"column":32},"end":{"line":122,"column":84}},"46":{"start":{"line":124,"column":21},"end":{"line":124,"column":39}},"47":{"start":{"line":125,"column":22},"end":{"line":125,"column":70}},"48":{"start":{"line":126,"column":26},"end":{"line":126,"column":85}},"49":{"start":{"line":128,"column":4},"end":{"line":128,"column":32}},"50":{"start":{"line":129,"column":4},"end":{"line":129,"column":40}},"51":{"start":{"line":130,"column":4},"end":{"line":130,"column":21}},"52":{"start":{"line":134,"column":4},"end":{"line":149,"column":null}},"53":{"start":{"line":135,"column":16},"end":{"line":135,"column":42}},"54":{"start":{"line":136,"column":6},"end":{"line":138,"column":null}},"55":{"start":{"line":137,"column":8},"end":{"line":137,"column":38}},"56":{"start":{"line":139,"column":29},"end":{"line":144,"column":null}},"57":{"start":{"line":146,"column":6},"end":{"line":146,"column":28}},"58":{"start":{"line":148,"column":6},"end":{"line":148,"column":47}},"59":{"start":{"line":153,"column":4},"end":{"line":153,"column":68}},"60":{"start":{"line":157,"column":29},"end":{"line":157,"column":62}},"61":{"start":{"line":158,"column":34},"end":{"line":158,"column":70}},"62":{"start":{"line":159,"column":24},"end":{"line":159,"column":26}},"63":{"start":{"line":160,"column":4},"end":{"line":160,"column":57}},"64":{"start":{"line":161,"column":4},"end":{"line":161,"column":73}},"65":{"start":{"line":162,"column":27},"end":{"line":162,"column":67}},"66":{"start":{"line":164,"column":4},"end":{"line":181,"column":null}},"67":{"start":{"line":168,"column":6},"end":{"line":168,"column":85}},"68":{"start":{"line":170,"column":6},"end":{"line":174,"column":null}},"69":{"start":{"line":171,"column":8},"end":{"line":173,"column":10}},"70":{"start":{"line":175,"column":28},"end":{"line":175,"column":29}},"71":{"start":{"line":176,"column":21},"end":{"line":176,"column":64}},"72":{"start":{"line":177,"column":28},"end":{"line":177,"column":68}},"73":{"start":{"line":178,"column":21},"end":{"line":178,"column":64}},"74":{"start":{"line":179,"column":30},"end":{"line":179,"column":75}},"75":{"start":{"line":180,"column":6},"end":{"line":180,"column":50}},"76":{"start":{"line":183,"column":4},"end":{"line":188,"column":6}},"77":{"start":{"line":193,"column":25},"end":{"line":198,"column":null}},"78":{"start":{"line":200,"column":4},"end":{"line":210,"column":null}},"79":{"start":{"line":200,"column":17},"end":{"line":200,"column":18}},"80":{"start":{"line":202,"column":8},"end":{"line":202,"column":91}},"81":{"start":{"line":203,"column":6},"end":{"line":209,"column":8}},"82":{"start":{"line":211,"column":4},"end":{"line":211,"column":26}},"83":{"start":{"line":215,"column":4},"end":{"line":236,"column":null}},"84":{"start":{"line":219,"column":6},"end":{"line":223,"column":8}},"85":{"start":{"line":224,"column":11},"end":{"line":236,"column":null}},"86":{"start":{"line":225,"column":6},"end":{"line":229,"column":8}},"87":{"start":{"line":231,"column":6},"end":{"line":235,"column":8}},"88":{"start":{"line":75,"column":0},"end":{"line":75,"column":13}}},"fnMap":{"0":{"name":"(anonymous_7)","decl":{"start":{"line":26,"column":9},"end":{"line":26,"column":35}},"loc":{"start":{"line":26,"column":9},"end":{"line":26,"column":59}}},"1":{"name":"(anonymous_8)","decl":{"start":{"line":30,"column":0},"end":{"line":30,"column":12}},"loc":{"start":{"line":30,"column":26},"end":{"line":35,"column":1}}},"2":{"name":"(anonymous_9)","decl":{"start":{"line":37,"column":9},"end":{"line":37,"column":35}},"loc":{"start":{"line":37,"column":9},"end":{"line":37,"column":54}}},"3":{"name":"(anonymous_10)","decl":{"start":{"line":39,"column":30},"end":{"line":39,"column":31}},"loc":{"start":{"line":39,"column":50},"end":{"line":41,"column":1}}},"4":{"name":"(anonymous_11)","decl":{"start":{"line":43,"column":9},"end":{"line":43,"column":16}},"loc":{"start":{"line":43,"column":9},"end":{"line":43,"column":36}}},"5":{"name":"(anonymous_12)","decl":{"start":{"line":87,"column":2},"end":{"line":87,"column":null}},"loc":{"start":{"line":91,"column":67},"end":{"line":103,"column":3}}},"6":{"name":"(anonymous_13)","decl":{"start":{"line":105,"column":8},"end":{"line":105,"column":21}},"loc":{"start":{"line":105,"column":21},"end":{"line":113,"column":null}}},"7":{"name":"(anonymous_15)","decl":{"start":{"line":115,"column":8},"end":{"line":115,"column":17}},"loc":{"start":{"line":115,"column":17},"end":{"line":131,"column":null}}},"8":{"name":"(anonymous_17)","decl":{"start":{"line":133,"column":16},"end":{"line":133,"column":34}},"loc":{"start":{"line":133,"column":34},"end":{"line":150,"column":null}}},"9":{"name":"(anonymous_19)","decl":{"start":{"line":152,"column":8},"end":{"line":152,"column":17}},"loc":{"start":{"line":152,"column":17},"end":{"line":154,"column":null}}},"10":{"name":"(anonymous_21)","decl":{"start":{"line":156,"column":8},"end":{"line":156,"column":12}},"loc":{"start":{"line":156,"column":50},"end":{"line":189,"column":null}}},"11":{"name":"(anonymous_23)","decl":{"start":{"line":191,"column":16},"end":{"line":191,"column":30}},"loc":{"start":{"line":191,"column":48},"end":{"line":212,"column":null}}},"12":{"name":"(anonymous_25)","decl":{"start":{"line":214,"column":10},"end":{"line":214,"column":21}},"loc":{"start":{"line":214,"column":21},"end":{"line":237,"column":3}}}},"branchMap":{"0":{"loc":{"start":{"line":30,"column":12},"end":{"line":30,"column":null}},"type":"binary-expr","locations":[{"start":{"line":30,"column":12},"end":{"line":30,"column":26}},{"start":{"line":30,"column":12},"end":{"line":30,"column":null}}]},"1":{"loc":{"start":{"line":89,"column":12},"end":{"line":89,"column":44}},"type":"default-arg","locations":[{"start":{"line":89,"column":27},"end":{"line":89,"column":44}}]},"2":{"loc":{"start":{"line":90,"column":12},"end":{"line":90,"column":34}},"type":"default-arg","locations":[{"start":{"line":90,"column":30},"end":{"line":90,"column":34}}]},"3":{"loc":{"start":{"line":91,"column":12},"end":{"line":91,"column":67}},"type":"default-arg","locations":[{"start":{"line":91,"column":45},"end":{"line":91,"column":67}}]},"4":{"loc":{"start":{"line":94,"column":4},"end":{"line":99,"column":null}},"type":"if","locations":[{"start":{"line":94,"column":4},"end":{"line":99,"column":null}}]},"5":{"loc":{"start":{"line":100,"column":4},"end":{"line":102,"column":null}},"type":"if","locations":[{"start":{"line":100,"column":4},"end":{"line":102,"column":null}}]},"6":{"loc":{"start":{"line":106,"column":4},"end":{"line":108,"column":null}},"type":"if","locations":[{"start":{"line":106,"column":4},"end":{"line":108,"column":null}}]},"7":{"loc":{"start":{"line":109,"column":4},"end":{"line":111,"column":null}},"type":"if","locations":[{"start":{"line":109,"column":4},"end":{"line":111,"column":null}}]},"8":{"loc":{"start":{"line":116,"column":4},"end":{"line":118,"column":null}},"type":"if","locations":[{"start":{"line":116,"column":4},"end":{"line":118,"column":null}}]},"9":{"loc":{"start":{"line":136,"column":6},"end":{"line":138,"column":null}},"type":"if","locations":[{"start":{"line":136,"column":6},"end":{"line":138,"column":null}}]},"10":{"loc":{"start":{"line":164,"column":4},"end":{"line":181,"column":null}},"type":"if","locations":[{"start":{"line":164,"column":4},"end":{"line":181,"column":null}},{"start":{"line":169,"column":11},"end":{"line":181,"column":null}}]},"11":{"loc":{"start":{"line":165,"column":6},"end":{"line":166,"column":58}},"type":"binary-expr","locations":[{"start":{"line":165,"column":6},"end":{"line":165,"column":52}},{"start":{"line":166,"column":6},"end":{"line":166,"column":58}}]},"12":{"loc":{"start":{"line":170,"column":6},"end":{"line":174,"column":null}},"type":"if","locations":[{"start":{"line":170,"column":6},"end":{"line":174,"column":null}}]},"13":{"loc":{"start":{"line":202,"column":8},"end":{"line":202,"column":91}},"type":"cond-expr","locations":[{"start":{"line":202,"column":35},"end":{"line":202,"column":61}},{"start":{"line":202,"column":64},"end":{"line":202,"column":91}}]},"14":{"loc":{"start":{"line":215,"column":4},"end":{"line":236,"column":null}},"type":"if","locations":[{"start":{"line":215,"column":4},"end":{"line":236,"column":null}},{"start":{"line":224,"column":11},"end":{"line":236,"column":null}}]},"15":{"loc":{"start":{"line":216,"column":6},"end":{"line":217,"column":58}},"type":"binary-expr","locations":[{"start":{"line":216,"column":6},"end":{"line":216,"column":52}},{"start":{"line":217,"column":6},"end":{"line":217,"column":58}}]},"16":{"loc":{"start":{"line":224,"column":11},"end":{"line":236,"column":null}},"type":"if","locations":[{"start":{"line":224,"column":11},"end":{"line":236,"column":null}},{"start":{"line":230,"column":11},"end":{"line":236,"column":null}}]}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":10,"20":10,"21":10,"22":10,"23":10,"24":10,"25":10,"26":10,"27":10,"28":10,"29":10,"30":10,"31":10,"32":1,"33":9,"34":0,"35":4,"36":0,"37":4,"38":4,"39":0,"40":4,"41":0,"42":4,"43":4,"44":4,"45":4,"46":4,"47":4,"48":4,"49":4,"50":4,"51":4,"52":4,"53":4,"54":4,"55":3,"56":4,"57":4,"58":0,"59":0,"60":4,"61":4,"62":4,"63":4,"64":4,"65":4,"66":4,"67":2,"68":2,"69":0,"70":2,"71":2,"72":2,"73":2,"74":2,"75":2,"76":4,"77":4,"78":4,"79":4,"80":5,"81":5,"82":4,"83":8,"84":4,"85":4,"86":2,"87":2,"88":1},"f":{"0":0,"1":1,"2":0,"3":1,"4":0,"5":10,"6":4,"7":4,"8":4,"9":0,"10":4,"11":4,"12":8},"b":{"0":[1,1],"1":[2],"2":[2],"3":[2],"4":[1],"5":[0],"6":[0],"7":[4],"8":[0],"9":[3],"10":[2,2],"11":[4,3],"12":[0],"13":[4,1],"14":[4,4],"15":[8,5],"16":[2,2]}}
|
|
3
|
-
,"/Users/
|
|
4
|
-
,"/Users/
|
|
1
|
+
{"/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/errors.ts": {"path":"/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/errors.ts","statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":71}},"1":{"start":{"line":9,"column":4},"end":{"line":9,"column":12}},"2":{"start":{"line":8,"column":30},"end":{"line":8,"column":45}},"3":{"start":{"line":10,"column":4},"end":{"line":10,"column":45}},"4":{"start":{"line":7,"column":0},"end":{"line":7,"column":13}},"5":{"start":{"line":20,"column":4},"end":{"line":20,"column":12}},"6":{"start":{"line":19,"column":30},"end":{"line":19,"column":40}},"7":{"start":{"line":21,"column":4},"end":{"line":21,"column":42}},"8":{"start":{"line":22,"column":4},"end":{"line":22,"column":63}},"9":{"start":{"line":18,"column":0},"end":{"line":18,"column":13}},"10":{"start":{"line":32,"column":4},"end":{"line":32,"column":12}},"11":{"start":{"line":33,"column":4},"end":{"line":33,"column":46}},"12":{"start":{"line":34,"column":4},"end":{"line":34,"column":68}},"13":{"start":{"line":30,"column":0},"end":{"line":30,"column":13}},"14":{"start":{"line":44,"column":4},"end":{"line":44,"column":12}},"15":{"start":{"line":43,"column":30},"end":{"line":43,"column":52}},"16":{"start":{"line":45,"column":4},"end":{"line":45,"column":45}},"17":{"start":{"line":46,"column":4},"end":{"line":46,"column":197}},"18":{"start":{"line":42,"column":0},"end":{"line":42,"column":13}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":8,"column":2},"end":{"line":8,"column":30}},"loc":{"start":{"line":8,"column":45},"end":{"line":11,"column":3}}},"1":{"name":"(anonymous_1)","decl":{"start":{"line":19,"column":2},"end":{"line":19,"column":30}},"loc":{"start":{"line":19,"column":40},"end":{"line":23,"column":3}}},"2":{"name":"(anonymous_2)","decl":{"start":{"line":31,"column":2},"end":{"line":31,"column":null}},"loc":{"start":{"line":31,"column":2},"end":{"line":35,"column":3}}},"3":{"name":"(anonymous_3)","decl":{"start":{"line":43,"column":2},"end":{"line":43,"column":30}},"loc":{"start":{"line":43,"column":52},"end":{"line":47,"column":3}}}},"branchMap":{},"s":{"0":1,"1":0,"2":0,"3":0,"4":1,"5":0,"6":0,"7":0,"8":0,"9":1,"10":0,"11":0,"12":0,"13":1,"14":0,"15":0,"16":0,"17":0,"18":1},"f":{"0":0,"1":0,"2":0,"3":0},"b":{}}
|
|
2
|
+
,"/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/taquito-ledger-signer.ts": {"path":"/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/taquito-ledger-signer.ts","statementMap":{"0":{"start":{"line":8,"column":0},"end":{"line":8,"column":93}},"1":{"start":{"line":9,"column":0},"end":{"line":9,"column":null}},"2":{"start":{"line":17,"column":0},"end":{"line":17,"column":42}},"3":{"start":{"line":18,"column":0},"end":{"line":18,"column":null}},"4":{"start":{"line":24,"column":0},"end":{"line":24,"column":82}},"5":{"start":{"line":26,"column":0},"end":{"line":26,"column":9}},"6":{"start":{"line":26,"column":9},"end":{"line":26,"column":59}},"7":{"start":{"line":30,"column":0},"end":{"line":30,"column":null}},"8":{"start":{"line":31,"column":2},"end":{"line":31,"column":null}},"9":{"start":{"line":32,"column":2},"end":{"line":32,"column":null}},"10":{"start":{"line":33,"column":2},"end":{"line":33,"column":null}},"11":{"start":{"line":34,"column":2},"end":{"line":34,"column":null}},"12":{"start":{"line":37,"column":0},"end":{"line":37,"column":9}},"13":{"start":{"line":37,"column":9},"end":{"line":37,"column":54}},"14":{"start":{"line":39,"column":30},"end":{"line":41,"column":1}},"15":{"start":{"line":40,"column":2},"end":{"line":40,"column":36}},"16":{"start":{"line":39,"column":13},"end":{"line":39,"column":30}},"17":{"start":{"line":43,"column":0},"end":{"line":43,"column":9}},"18":{"start":{"line":43,"column":9},"end":{"line":43,"column":36}},"19":{"start":{"line":88,"column":12},"end":{"line":88,"column":38}},"20":{"start":{"line":89,"column":12},"end":{"line":89,"column":27}},"21":{"start":{"line":90,"column":12},"end":{"line":90,"column":30}},"22":{"start":{"line":91,"column":12},"end":{"line":91,"column":45}},"23":{"start":{"line":77,"column":19},"end":{"line":77,"column":30}},"24":{"start":{"line":78,"column":19},"end":{"line":78,"column":45}},"25":{"start":{"line":79,"column":19},"end":{"line":79,"column":48}},"26":{"start":{"line":80,"column":19},"end":{"line":80,"column":35}},"27":{"start":{"line":81,"column":19},"end":{"line":81,"column":49}},"28":{"start":{"line":82,"column":19},"end":{"line":82,"column":48}},"29":{"start":{"line":83,"column":19},"end":{"line":83,"column":49}},"30":{"start":{"line":93,"column":4},"end":{"line":93,"column":41}},"31":{"start":{"line":94,"column":4},"end":{"line":99,"column":null}},"32":{"start":{"line":95,"column":6},"end":{"line":98,"column":8}},"33":{"start":{"line":100,"column":4},"end":{"line":102,"column":null}},"34":{"start":{"line":101,"column":6},"end":{"line":101,"column":70}},"35":{"start":{"line":106,"column":4},"end":{"line":108,"column":null}},"36":{"start":{"line":107,"column":6},"end":{"line":107,"column":29}},"37":{"start":{"line":109,"column":4},"end":{"line":111,"column":null}},"38":{"start":{"line":110,"column":6},"end":{"line":110,"column":33}},"39":{"start":{"line":112,"column":4},"end":{"line":112,"column":44}},"40":{"start":{"line":116,"column":4},"end":{"line":118,"column":null}},"41":{"start":{"line":117,"column":6},"end":{"line":117,"column":29}},"42":{"start":{"line":119,"column":27},"end":{"line":119,"column":58}},"43":{"start":{"line":120,"column":28},"end":{"line":120,"column":45}},"44":{"start":{"line":121,"column":25},"end":{"line":121,"column":69}},"45":{"start":{"line":122,"column":32},"end":{"line":122,"column":84}},"46":{"start":{"line":124,"column":21},"end":{"line":124,"column":39}},"47":{"start":{"line":125,"column":22},"end":{"line":125,"column":70}},"48":{"start":{"line":126,"column":26},"end":{"line":126,"column":85}},"49":{"start":{"line":128,"column":4},"end":{"line":128,"column":32}},"50":{"start":{"line":129,"column":4},"end":{"line":129,"column":40}},"51":{"start":{"line":130,"column":4},"end":{"line":130,"column":21}},"52":{"start":{"line":134,"column":4},"end":{"line":149,"column":null}},"53":{"start":{"line":135,"column":16},"end":{"line":135,"column":42}},"54":{"start":{"line":136,"column":6},"end":{"line":138,"column":null}},"55":{"start":{"line":137,"column":8},"end":{"line":137,"column":38}},"56":{"start":{"line":139,"column":29},"end":{"line":144,"column":null}},"57":{"start":{"line":146,"column":6},"end":{"line":146,"column":28}},"58":{"start":{"line":148,"column":6},"end":{"line":148,"column":47}},"59":{"start":{"line":153,"column":4},"end":{"line":153,"column":68}},"60":{"start":{"line":157,"column":29},"end":{"line":157,"column":62}},"61":{"start":{"line":158,"column":34},"end":{"line":158,"column":70}},"62":{"start":{"line":159,"column":24},"end":{"line":159,"column":26}},"63":{"start":{"line":160,"column":4},"end":{"line":160,"column":57}},"64":{"start":{"line":161,"column":4},"end":{"line":161,"column":73}},"65":{"start":{"line":162,"column":27},"end":{"line":162,"column":67}},"66":{"start":{"line":164,"column":4},"end":{"line":181,"column":null}},"67":{"start":{"line":168,"column":6},"end":{"line":168,"column":85}},"68":{"start":{"line":170,"column":6},"end":{"line":174,"column":null}},"69":{"start":{"line":171,"column":8},"end":{"line":173,"column":10}},"70":{"start":{"line":175,"column":28},"end":{"line":175,"column":29}},"71":{"start":{"line":176,"column":21},"end":{"line":176,"column":64}},"72":{"start":{"line":177,"column":28},"end":{"line":177,"column":68}},"73":{"start":{"line":178,"column":21},"end":{"line":178,"column":64}},"74":{"start":{"line":179,"column":30},"end":{"line":179,"column":75}},"75":{"start":{"line":180,"column":6},"end":{"line":180,"column":50}},"76":{"start":{"line":183,"column":4},"end":{"line":188,"column":6}},"77":{"start":{"line":193,"column":25},"end":{"line":198,"column":null}},"78":{"start":{"line":200,"column":4},"end":{"line":210,"column":null}},"79":{"start":{"line":200,"column":17},"end":{"line":200,"column":18}},"80":{"start":{"line":202,"column":8},"end":{"line":202,"column":91}},"81":{"start":{"line":203,"column":6},"end":{"line":209,"column":8}},"82":{"start":{"line":211,"column":4},"end":{"line":211,"column":26}},"83":{"start":{"line":215,"column":4},"end":{"line":236,"column":null}},"84":{"start":{"line":219,"column":6},"end":{"line":223,"column":8}},"85":{"start":{"line":224,"column":11},"end":{"line":236,"column":null}},"86":{"start":{"line":225,"column":6},"end":{"line":229,"column":8}},"87":{"start":{"line":231,"column":6},"end":{"line":235,"column":8}},"88":{"start":{"line":75,"column":0},"end":{"line":75,"column":13}}},"fnMap":{"0":{"name":"(anonymous_7)","decl":{"start":{"line":26,"column":9},"end":{"line":26,"column":35}},"loc":{"start":{"line":26,"column":9},"end":{"line":26,"column":59}}},"1":{"name":"(anonymous_8)","decl":{"start":{"line":30,"column":0},"end":{"line":30,"column":12}},"loc":{"start":{"line":30,"column":26},"end":{"line":35,"column":1}}},"2":{"name":"(anonymous_9)","decl":{"start":{"line":37,"column":9},"end":{"line":37,"column":35}},"loc":{"start":{"line":37,"column":9},"end":{"line":37,"column":54}}},"3":{"name":"(anonymous_10)","decl":{"start":{"line":39,"column":30},"end":{"line":39,"column":31}},"loc":{"start":{"line":39,"column":50},"end":{"line":41,"column":1}}},"4":{"name":"(anonymous_11)","decl":{"start":{"line":43,"column":9},"end":{"line":43,"column":16}},"loc":{"start":{"line":43,"column":9},"end":{"line":43,"column":36}}},"5":{"name":"(anonymous_12)","decl":{"start":{"line":87,"column":2},"end":{"line":87,"column":null}},"loc":{"start":{"line":91,"column":67},"end":{"line":103,"column":3}}},"6":{"name":"(anonymous_13)","decl":{"start":{"line":105,"column":8},"end":{"line":105,"column":21}},"loc":{"start":{"line":105,"column":21},"end":{"line":113,"column":null}}},"7":{"name":"(anonymous_15)","decl":{"start":{"line":115,"column":8},"end":{"line":115,"column":17}},"loc":{"start":{"line":115,"column":17},"end":{"line":131,"column":null}}},"8":{"name":"(anonymous_17)","decl":{"start":{"line":133,"column":16},"end":{"line":133,"column":34}},"loc":{"start":{"line":133,"column":34},"end":{"line":150,"column":null}}},"9":{"name":"(anonymous_19)","decl":{"start":{"line":152,"column":8},"end":{"line":152,"column":17}},"loc":{"start":{"line":152,"column":17},"end":{"line":154,"column":null}}},"10":{"name":"(anonymous_21)","decl":{"start":{"line":156,"column":8},"end":{"line":156,"column":12}},"loc":{"start":{"line":156,"column":50},"end":{"line":189,"column":null}}},"11":{"name":"(anonymous_23)","decl":{"start":{"line":191,"column":16},"end":{"line":191,"column":30}},"loc":{"start":{"line":191,"column":48},"end":{"line":212,"column":null}}},"12":{"name":"(anonymous_25)","decl":{"start":{"line":214,"column":10},"end":{"line":214,"column":21}},"loc":{"start":{"line":214,"column":21},"end":{"line":237,"column":3}}}},"branchMap":{"0":{"loc":{"start":{"line":30,"column":12},"end":{"line":30,"column":null}},"type":"binary-expr","locations":[{"start":{"line":30,"column":12},"end":{"line":30,"column":26}},{"start":{"line":30,"column":12},"end":{"line":30,"column":null}}]},"1":{"loc":{"start":{"line":89,"column":12},"end":{"line":89,"column":44}},"type":"default-arg","locations":[{"start":{"line":89,"column":27},"end":{"line":89,"column":44}}]},"2":{"loc":{"start":{"line":90,"column":12},"end":{"line":90,"column":34}},"type":"default-arg","locations":[{"start":{"line":90,"column":30},"end":{"line":90,"column":34}}]},"3":{"loc":{"start":{"line":91,"column":12},"end":{"line":91,"column":67}},"type":"default-arg","locations":[{"start":{"line":91,"column":45},"end":{"line":91,"column":67}}]},"4":{"loc":{"start":{"line":94,"column":4},"end":{"line":99,"column":null}},"type":"if","locations":[{"start":{"line":94,"column":4},"end":{"line":99,"column":null}}]},"5":{"loc":{"start":{"line":100,"column":4},"end":{"line":102,"column":null}},"type":"if","locations":[{"start":{"line":100,"column":4},"end":{"line":102,"column":null}}]},"6":{"loc":{"start":{"line":106,"column":4},"end":{"line":108,"column":null}},"type":"if","locations":[{"start":{"line":106,"column":4},"end":{"line":108,"column":null}}]},"7":{"loc":{"start":{"line":109,"column":4},"end":{"line":111,"column":null}},"type":"if","locations":[{"start":{"line":109,"column":4},"end":{"line":111,"column":null}}]},"8":{"loc":{"start":{"line":116,"column":4},"end":{"line":118,"column":null}},"type":"if","locations":[{"start":{"line":116,"column":4},"end":{"line":118,"column":null}}]},"9":{"loc":{"start":{"line":136,"column":6},"end":{"line":138,"column":null}},"type":"if","locations":[{"start":{"line":136,"column":6},"end":{"line":138,"column":null}}]},"10":{"loc":{"start":{"line":164,"column":4},"end":{"line":181,"column":null}},"type":"if","locations":[{"start":{"line":164,"column":4},"end":{"line":181,"column":null}},{"start":{"line":169,"column":11},"end":{"line":181,"column":null}}]},"11":{"loc":{"start":{"line":165,"column":6},"end":{"line":166,"column":58}},"type":"binary-expr","locations":[{"start":{"line":165,"column":6},"end":{"line":165,"column":52}},{"start":{"line":166,"column":6},"end":{"line":166,"column":58}}]},"12":{"loc":{"start":{"line":170,"column":6},"end":{"line":174,"column":null}},"type":"if","locations":[{"start":{"line":170,"column":6},"end":{"line":174,"column":null}}]},"13":{"loc":{"start":{"line":202,"column":8},"end":{"line":202,"column":91}},"type":"cond-expr","locations":[{"start":{"line":202,"column":35},"end":{"line":202,"column":61}},{"start":{"line":202,"column":64},"end":{"line":202,"column":91}}]},"14":{"loc":{"start":{"line":215,"column":4},"end":{"line":236,"column":null}},"type":"if","locations":[{"start":{"line":215,"column":4},"end":{"line":236,"column":null}},{"start":{"line":224,"column":11},"end":{"line":236,"column":null}}]},"15":{"loc":{"start":{"line":216,"column":6},"end":{"line":217,"column":58}},"type":"binary-expr","locations":[{"start":{"line":216,"column":6},"end":{"line":216,"column":52}},{"start":{"line":217,"column":6},"end":{"line":217,"column":58}}]},"16":{"loc":{"start":{"line":224,"column":11},"end":{"line":236,"column":null}},"type":"if","locations":[{"start":{"line":224,"column":11},"end":{"line":236,"column":null}},{"start":{"line":230,"column":11},"end":{"line":236,"column":null}}]}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":10,"20":10,"21":10,"22":10,"23":10,"24":10,"25":10,"26":10,"27":10,"28":10,"29":10,"30":10,"31":10,"32":1,"33":9,"34":0,"35":4,"36":0,"37":4,"38":4,"39":0,"40":4,"41":0,"42":4,"43":4,"44":4,"45":4,"46":4,"47":4,"48":4,"49":4,"50":4,"51":4,"52":4,"53":4,"54":4,"55":3,"56":4,"57":4,"58":0,"59":0,"60":4,"61":4,"62":4,"63":4,"64":4,"65":4,"66":4,"67":2,"68":2,"69":0,"70":2,"71":2,"72":2,"73":2,"74":2,"75":2,"76":4,"77":4,"78":4,"79":4,"80":5,"81":5,"82":4,"83":8,"84":4,"85":4,"86":2,"87":2,"88":1},"f":{"0":0,"1":1,"2":0,"3":1,"4":0,"5":10,"6":4,"7":4,"8":4,"9":0,"10":4,"11":4,"12":8},"b":{"0":[1,1],"1":[2],"2":[2],"3":[2],"4":[1],"5":[0],"6":[0],"7":[4],"8":[0],"9":[3],"10":[2,2],"11":[4,3],"12":[0],"13":[4,1],"14":[4,4],"15":[8,5],"16":[2,2]}}
|
|
3
|
+
,"/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/utils.ts": {"path":"/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/utils.ts","statementMap":{"0":{"start":{"line":8,"column":23},"end":{"line":8,"column":26}},"1":{"start":{"line":18,"column":27},"end":{"line":18,"column":29}},"2":{"start":{"line":19,"column":21},"end":{"line":19,"column":36}},"3":{"start":{"line":20,"column":2},"end":{"line":29,"column":5}},"4":{"start":{"line":21,"column":19},"end":{"line":21,"column":40}},"5":{"start":{"line":22,"column":4},"end":{"line":24,"column":null}},"6":{"start":{"line":23,"column":6},"end":{"line":23,"column":13}},"7":{"start":{"line":25,"column":4},"end":{"line":27,"column":null}},"8":{"start":{"line":26,"column":6},"end":{"line":26,"column":29}},"9":{"start":{"line":28,"column":4},"end":{"line":28,"column":26}},"10":{"start":{"line":30,"column":17},"end":{"line":30,"column":52}},"11":{"start":{"line":31,"column":2},"end":{"line":31,"column":28}},"12":{"start":{"line":32,"column":2},"end":{"line":34,"column":5}},"13":{"start":{"line":33,"column":4},"end":{"line":33,"column":49}},"14":{"start":{"line":35,"column":2},"end":{"line":35,"column":16}},"15":{"start":{"line":17,"column":0},"end":{"line":17,"column":16}},"16":{"start":{"line":43,"column":2},"end":{"line":48,"column":null}},"17":{"start":{"line":44,"column":4},"end":{"line":44,"column":35}},"18":{"start":{"line":46,"column":4},"end":{"line":46,"column":49}},"19":{"start":{"line":47,"column":4},"end":{"line":47,"column":39}},"20":{"start":{"line":49,"column":2},"end":{"line":49,"column":19}},"21":{"start":{"line":42,"column":0},"end":{"line":42,"column":16}},"22":{"start":{"line":53,"column":23},"end":{"line":53,"column":28}},"23":{"start":{"line":54,"column":2},"end":{"line":57,"column":null}},"24":{"start":{"line":55,"column":25},"end":{"line":55,"column":63}},"25":{"start":{"line":56,"column":4},"end":{"line":56,"column":48}},"26":{"start":{"line":58,"column":2},"end":{"line":58,"column":24}},"27":{"start":{"line":52,"column":0},"end":{"line":52,"column":16}},"28":{"start":{"line":69,"column":15},"end":{"line":69,"column":16}},"29":{"start":{"line":70,"column":2},"end":{"line":77,"column":null}},"30":{"start":{"line":72,"column":6},"end":{"line":72,"column":94}},"31":{"start":{"line":73,"column":17},"end":{"line":73,"column":40}},"32":{"start":{"line":74,"column":4},"end":{"line":74,"column":56}},"33":{"start":{"line":75,"column":4},"end":{"line":75,"column":29}},"34":{"start":{"line":76,"column":4},"end":{"line":76,"column":24}},"35":{"start":{"line":78,"column":2},"end":{"line":78,"column":23}},"36":{"start":{"line":68,"column":0},"end":{"line":68,"column":16}},"37":{"start":{"line":88,"column":14},"end":{"line":88,"column":18}},"38":{"start":{"line":89,"column":2},"end":{"line":91,"column":null}},"39":{"start":{"line":90,"column":4},"end":{"line":90,"column":18}},"40":{"start":{"line":92,"column":2},"end":{"line":94,"column":null}},"41":{"start":{"line":93,"column":4},"end":{"line":93,"column":18}},"42":{"start":{"line":95,"column":2},"end":{"line":97,"column":null}},"43":{"start":{"line":96,"column":4},"end":{"line":96,"column":18}},"44":{"start":{"line":98,"column":18},"end":{"line":98,"column":29}},"45":{"start":{"line":99,"column":2},"end":{"line":101,"column":null}},"46":{"start":{"line":100,"column":4},"end":{"line":100,"column":18}},"47":{"start":{"line":103,"column":24},"end":{"line":103,"column":35}},"48":{"start":{"line":104,"column":18},"end":{"line":104,"column":41}},"49":{"start":{"line":105,"column":2},"end":{"line":107,"column":null}},"50":{"start":{"line":106,"column":4},"end":{"line":106,"column":18}},"51":{"start":{"line":108,"column":2},"end":{"line":108,"column":15}},"52":{"start":{"line":87,"column":0},"end":{"line":87,"column":16}},"53":{"start":{"line":119,"column":17},"end":{"line":119,"column":33}},"54":{"start":{"line":120,"column":2},"end":{"line":120,"column":17}},"55":{"start":{"line":122,"column":15},"end":{"line":122,"column":34}},"56":{"start":{"line":123,"column":22},"end":{"line":123,"column":35}},"57":{"start":{"line":124,"column":2},"end":{"line":127,"column":null}},"58":{"start":{"line":125,"column":4},"end":{"line":125,"column":33}},"59":{"start":{"line":126,"column":4},"end":{"line":126,"column":16}},"60":{"start":{"line":128,"column":2},"end":{"line":128,"column":76}},"61":{"start":{"line":129,"column":2},"end":{"line":129,"column":43}},"62":{"start":{"line":118,"column":0},"end":{"line":118,"column":16}}},"fnMap":{"0":{"name":"transformPathToBuffer","decl":{"start":{"line":17,"column":16},"end":{"line":17,"column":37}},"loc":{"start":{"line":17,"column":50},"end":{"line":36,"column":1}}},"1":{"name":"(anonymous_1)","decl":{"start":{"line":20,"column":21},"end":{"line":20,"column":22}},"loc":{"start":{"line":20,"column":33},"end":{"line":29,"column":3}}},"2":{"name":"(anonymous_2)","decl":{"start":{"line":32,"column":17},"end":{"line":32,"column":18}},"loc":{"start":{"line":32,"column":36},"end":{"line":34,"column":3}}},"3":{"name":"compressPublicKey","decl":{"start":{"line":42,"column":16},"end":{"line":42,"column":33}},"loc":{"start":{"line":42,"column":74},"end":{"line":50,"column":1}}},"4":{"name":"appendWatermark","decl":{"start":{"line":52,"column":16},"end":{"line":52,"column":31}},"loc":{"start":{"line":52,"column":69},"end":{"line":59,"column":1}}},"5":{"name":"chunkOperation","decl":{"start":{"line":68,"column":16},"end":{"line":68,"column":30}},"loc":{"start":{"line":68,"column":68},"end":{"line":79,"column":1}}},"6":{"name":"validateResponse","decl":{"start":{"line":87,"column":16},"end":{"line":87,"column":32}},"loc":{"start":{"line":87,"column":49},"end":{"line":109,"column":1}}},"7":{"name":"extractValue","decl":{"start":{"line":118,"column":16},"end":{"line":118,"column":28}},"loc":{"start":{"line":118,"column":64},"end":{"line":130,"column":1}}}},"branchMap":{"0":{"loc":{"start":{"line":22,"column":4},"end":{"line":24,"column":null}},"type":"if","locations":[{"start":{"line":22,"column":4},"end":{"line":24,"column":null}}]},"1":{"loc":{"start":{"line":25,"column":4},"end":{"line":27,"column":null}},"type":"if","locations":[{"start":{"line":25,"column":4},"end":{"line":27,"column":null}}]},"2":{"loc":{"start":{"line":25,"column":8},"end":{"line":25,"column":65}},"type":"binary-expr","locations":[{"start":{"line":25,"column":8},"end":{"line":25,"column":26}},{"start":{"line":25,"column":30},"end":{"line":25,"column":65}}]},"3":{"loc":{"start":{"line":43,"column":2},"end":{"line":48,"column":null}},"type":"if","locations":[{"start":{"line":43,"column":2},"end":{"line":48,"column":null}},{"start":{"line":45,"column":9},"end":{"line":48,"column":null}}]},"4":{"loc":{"start":{"line":43,"column":6},"end":{"line":43,"column":38}},"type":"binary-expr","locations":[{"start":{"line":43,"column":6},"end":{"line":43,"column":20}},{"start":{"line":43,"column":24},"end":{"line":43,"column":38}}]},"5":{"loc":{"start":{"line":54,"column":2},"end":{"line":57,"column":null}},"type":"if","locations":[{"start":{"line":54,"column":2},"end":{"line":57,"column":null}}]},"6":{"loc":{"start":{"line":72,"column":6},"end":{"line":72,"column":94}},"type":"cond-expr","locations":[{"start":{"line":72,"column":52},"end":{"line":72,"column":77}},{"start":{"line":72,"column":80},"end":{"line":72,"column":94}}]},"7":{"loc":{"start":{"line":89,"column":2},"end":{"line":91,"column":null}},"type":"if","locations":[{"start":{"line":89,"column":2},"end":{"line":91,"column":null}}]},"8":{"loc":{"start":{"line":89,"column":6},"end":{"line":89,"column":50}},"type":"binary-expr","locations":[{"start":{"line":89,"column":6},"end":{"line":89,"column":26}},{"start":{"line":89,"column":30},"end":{"line":89,"column":50}}]},"9":{"loc":{"start":{"line":92,"column":2},"end":{"line":94,"column":null}},"type":"if","locations":[{"start":{"line":92,"column":2},"end":{"line":94,"column":null}}]},"10":{"loc":{"start":{"line":95,"column":2},"end":{"line":97,"column":null}},"type":"if","locations":[{"start":{"line":95,"column":2},"end":{"line":97,"column":null}}]},"11":{"loc":{"start":{"line":99,"column":2},"end":{"line":101,"column":null}},"type":"if","locations":[{"start":{"line":99,"column":2},"end":{"line":101,"column":null}}]},"12":{"loc":{"start":{"line":105,"column":2},"end":{"line":107,"column":null}},"type":"if","locations":[{"start":{"line":105,"column":2},"end":{"line":107,"column":null}}]},"13":{"loc":{"start":{"line":124,"column":2},"end":{"line":127,"column":null}},"type":"if","locations":[{"start":{"line":124,"column":2},"end":{"line":127,"column":null}}]}},"s":{"0":2,"1":18,"2":18,"3":18,"4":73,"5":73,"6":0,"7":73,"8":73,"9":73,"10":18,"11":18,"12":18,"13":73,"14":18,"15":2,"16":7,"17":3,"18":4,"19":4,"20":7,"21":2,"22":6,"23":6,"24":1,"25":1,"26":6,"27":2,"28":7,"29":7,"30":11,"31":11,"32":11,"33":11,"34":11,"35":7,"36":2,"37":7,"38":7,"39":1,"40":7,"41":1,"42":7,"43":1,"44":7,"45":7,"46":1,"47":7,"48":7,"49":7,"50":0,"51":7,"52":2,"53":5,"54":5,"55":5,"56":5,"57":5,"58":0,"59":0,"60":5,"61":5,"62":2},"f":{"0":18,"1":73,"2":73,"3":7,"4":6,"5":7,"6":7,"7":5},"b":{"0":[0],"1":[73],"2":[73,73],"3":[3,4],"4":[7,4],"5":[1],"6":[7,4],"7":[1],"8":[7,1],"9":[1],"10":[1],"11":[1],"12":[0],"13":[0]}}
|
|
4
|
+
,"/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/version.ts": {"path":"/Users/huianyang/ECAD_LABS/taquito/packages/taquito-ledger-signer/src/version.ts","statementMap":{"0":{"start":{"line":3,"column":13},"end":{"line":6,"column":2}}},"fnMap":{},"branchMap":{},"s":{"0":1},"f":{},"b":{}}
|
|
5
5
|
}
|
|
@@ -166,7 +166,7 @@ export class PublicKeyHashRetrievalError extends Error {
|
|
|
166
166
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
167
167
|
Code coverage generated by
|
|
168
168
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
169
|
-
at 2023-
|
|
169
|
+
at 2023-06-12T17:37:19.053Z
|
|
170
170
|
</div>
|
|
171
171
|
<script src="prettify.js"></script>
|
|
172
172
|
<script>
|
|
@@ -163,10 +163,10 @@
|
|
|
163
163
|
|
|
164
164
|
/**
|
|
165
165
|
* @category Error
|
|
166
|
-
* @description Error indicates an invalid or unparseable ledger response
|
|
166
|
+
* @description Error that indicates an invalid or unparseable ledger response
|
|
167
167
|
*/
|
|
168
168
|
export class InvalidLedgerResponseError extends TaquitoError {
|
|
169
|
-
<span class="fstat-no" title="function not covered" > constructor(public <span class="cstat-no" title="statement not covered" >m</span>essage: string)</span> {
|
|
169
|
+
<span class="fstat-no" title="function not covered" > constructor(public readonly <span class="cstat-no" title="statement not covered" >m</span>essage: string)</span> {
|
|
170
170
|
<span class="cstat-no" title="statement not covered" > super();</span>
|
|
171
171
|
<span class="cstat-no" title="statement not covered" > this.name = 'InvalidLedgerResponseError';</span>
|
|
172
172
|
}
|
|
@@ -174,10 +174,10 @@ export class InvalidLedgerResponseError extends TaquitoError {
|
|
|
174
174
|
|
|
175
175
|
/**
|
|
176
176
|
* @category Error
|
|
177
|
-
* @description Error indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
177
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
178
178
|
*/
|
|
179
179
|
export class PublicKeyRetrievalError extends TaquitoError {
|
|
180
|
-
<span class="fstat-no" title="function not covered" > constructor(public <span class="cstat-no" title="statement not covered" >c</span>ause: any)</span> {
|
|
180
|
+
<span class="fstat-no" title="function not covered" > constructor(public readonly <span class="cstat-no" title="statement not covered" >c</span>ause: any)</span> {
|
|
181
181
|
<span class="cstat-no" title="statement not covered" > super();</span>
|
|
182
182
|
<span class="cstat-no" title="statement not covered" > this.name = 'PublicKeyRetrievalError';</span>
|
|
183
183
|
<span class="cstat-no" title="statement not covered" > this.message = `Unable to retrieve Public Key from Ledger`;</span>
|
|
@@ -186,7 +186,7 @@ export class PublicKeyRetrievalError extends TaquitoError {
|
|
|
186
186
|
|
|
187
187
|
/**
|
|
188
188
|
* @category Error
|
|
189
|
-
* @description Error indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
189
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
190
190
|
*/
|
|
191
191
|
export class PublicKeyHashRetrievalError extends TaquitoError {
|
|
192
192
|
<span class="fstat-no" title="function not covered" > constructor() {</span>
|
|
@@ -198,10 +198,10 @@ export class PublicKeyHashRetrievalError extends TaquitoError {
|
|
|
198
198
|
|
|
199
199
|
/**
|
|
200
200
|
* @category Error
|
|
201
|
-
* @description Error indicates an invalid derivation type being passed or used
|
|
201
|
+
* @description Error that indicates an invalid derivation type being passed or used
|
|
202
202
|
*/
|
|
203
203
|
export class InvalidDerivationTypeError extends ParameterValidationError {
|
|
204
|
-
<span class="fstat-no" title="function not covered" > constructor(public <span class="cstat-no" title="statement not covered" >d</span>erivationType: string)</span> {
|
|
204
|
+
<span class="fstat-no" title="function not covered" > constructor(public readonly <span class="cstat-no" title="statement not covered" >d</span>erivationType: string)</span> {
|
|
205
205
|
<span class="cstat-no" title="statement not covered" > super();</span>
|
|
206
206
|
<span class="cstat-no" title="statement not covered" > this.name = 'InvalidDerivationTypeError';</span>
|
|
207
207
|
<span class="cstat-no" title="statement not covered" > this.message = `Invalid derivation type ${derivationType} expecting one of the following: DerivationType.ED25519, DerivationType.SECP256K1, DerivationType.P256 or DerivationType.BIP32_ED25519`;</span>
|
|
@@ -214,7 +214,7 @@ export class InvalidDerivationTypeError extends ParameterValidationError {
|
|
|
214
214
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
215
215
|
Code coverage generated by
|
|
216
216
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
217
|
-
at 2023-
|
|
217
|
+
at 2023-08-09T21:28:45.384Z
|
|
218
218
|
</div>
|
|
219
219
|
<script src="prettify.js"></script>
|
|
220
220
|
<script>
|
|
@@ -146,7 +146,7 @@
|
|
|
146
146
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
147
147
|
Code coverage generated by
|
|
148
148
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
149
|
-
at 2023-
|
|
149
|
+
at 2023-08-09T21:28:45.384Z
|
|
150
150
|
</div>
|
|
151
151
|
<script src="prettify.js"></script>
|
|
152
152
|
<script>
|
|
@@ -784,7 +784,7 @@ export class LedgerSigner implements Signer {
|
|
|
784
784
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
785
785
|
Code coverage generated by
|
|
786
786
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
787
|
-
at 2023-
|
|
787
|
+
at 2023-08-09T21:28:45.384Z
|
|
788
788
|
</div>
|
|
789
789
|
<script src="prettify.js"></script>
|
|
790
790
|
<script>
|
|
@@ -460,7 +460,7 @@ export function extractValue(idxLength: number, response: Buffer) {
|
|
|
460
460
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
461
461
|
Code coverage generated by
|
|
462
462
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
463
|
-
at 2023-
|
|
463
|
+
at 2023-08-09T21:28:45.384Z
|
|
464
464
|
</div>
|
|
465
465
|
<script src="prettify.js"></script>
|
|
466
466
|
<script>
|
|
@@ -68,15 +68,18 @@
|
|
|
68
68
|
<a name='L3'></a><a href='#L3'>3</a>
|
|
69
69
|
<a name='L4'></a><a href='#L4'>4</a>
|
|
70
70
|
<a name='L5'></a><a href='#L5'>5</a>
|
|
71
|
-
<a name='L6'></a><a href='#L6'>6</a
|
|
71
|
+
<a name='L6'></a><a href='#L6'>6</a>
|
|
72
|
+
<a name='L7'></a><a href='#L7'>7</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
73
|
+
<span class="cline-any cline-neutral"> </span>
|
|
72
74
|
<span class="cline-any cline-yes">1x</span>
|
|
73
75
|
<span class="cline-any cline-neutral"> </span>
|
|
74
76
|
<span class="cline-any cline-neutral"> </span>
|
|
75
77
|
<span class="cline-any cline-neutral"> </span>
|
|
76
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"
|
|
78
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">
|
|
79
|
+
// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!
|
|
77
80
|
export const VERSION = {
|
|
78
|
-
|
|
79
|
-
|
|
81
|
+
"commitHash": "15732f9b7d575aa46427c94501fb8677a754b733",
|
|
82
|
+
"version": "17.1.1"
|
|
80
83
|
};
|
|
81
84
|
</pre></td></tr></table></pre>
|
|
82
85
|
|
|
@@ -85,7 +88,7 @@ export const VERSION = {
|
|
|
85
88
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
86
89
|
Code coverage generated by
|
|
87
90
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
88
|
-
at 2023-
|
|
91
|
+
at 2023-08-09T21:28:45.384Z
|
|
89
92
|
</div>
|
|
90
93
|
<script src="prettify.js"></script>
|
|
91
94
|
<script>
|
package/coverage/lcov.info
CHANGED
package/dist/lib/errors.js
CHANGED
|
@@ -4,7 +4,7 @@ exports.InvalidDerivationTypeError = exports.PublicKeyHashRetrievalError = expor
|
|
|
4
4
|
const core_1 = require("@taquito/core");
|
|
5
5
|
/**
|
|
6
6
|
* @category Error
|
|
7
|
-
* @description Error indicates an invalid or unparseable ledger response
|
|
7
|
+
* @description Error that indicates an invalid or unparseable ledger response
|
|
8
8
|
*/
|
|
9
9
|
class InvalidLedgerResponseError extends core_1.TaquitoError {
|
|
10
10
|
constructor(message) {
|
|
@@ -16,7 +16,7 @@ class InvalidLedgerResponseError extends core_1.TaquitoError {
|
|
|
16
16
|
exports.InvalidLedgerResponseError = InvalidLedgerResponseError;
|
|
17
17
|
/**
|
|
18
18
|
* @category Error
|
|
19
|
-
* @description Error indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
19
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
20
20
|
*/
|
|
21
21
|
class PublicKeyRetrievalError extends core_1.TaquitoError {
|
|
22
22
|
constructor(cause) {
|
|
@@ -29,7 +29,7 @@ class PublicKeyRetrievalError extends core_1.TaquitoError {
|
|
|
29
29
|
exports.PublicKeyRetrievalError = PublicKeyRetrievalError;
|
|
30
30
|
/**
|
|
31
31
|
* @category Error
|
|
32
|
-
* @description Error indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
32
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
33
33
|
*/
|
|
34
34
|
class PublicKeyHashRetrievalError extends core_1.TaquitoError {
|
|
35
35
|
constructor() {
|
|
@@ -41,7 +41,7 @@ class PublicKeyHashRetrievalError extends core_1.TaquitoError {
|
|
|
41
41
|
exports.PublicKeyHashRetrievalError = PublicKeyHashRetrievalError;
|
|
42
42
|
/**
|
|
43
43
|
* @category Error
|
|
44
|
-
* @description Error indicates an invalid derivation type being passed or used
|
|
44
|
+
* @description Error that indicates an invalid derivation type being passed or used
|
|
45
45
|
*/
|
|
46
46
|
class InvalidDerivationTypeError extends core_1.ParameterValidationError {
|
|
47
47
|
constructor(derivationType) {
|
package/dist/lib/version.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.VERSION = void 0;
|
|
4
4
|
// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!
|
|
5
5
|
exports.VERSION = {
|
|
6
|
-
"commitHash": "
|
|
7
|
-
"version": "17.
|
|
6
|
+
"commitHash": "96c9d60e1d08c7ac01d81e4d23ba5038c7779c92",
|
|
7
|
+
"version": "17.2.0-beta-RC.0"
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=version.js.map
|
package/dist/lib/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AACA,2EAA2E;AAC9D,QAAA,OAAO,GAAG;IACnB,YAAY,EAAE,0CAA0C;IACxD,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AACA,2EAA2E;AAC9D,QAAA,OAAO,GAAG;IACnB,YAAY,EAAE,0CAA0C;IACxD,SAAS,EAAE,kBAAkB;CAChC,CAAC"}
|
|
@@ -155,7 +155,7 @@ function extractValue(idxLength, response) {
|
|
|
155
155
|
|
|
156
156
|
/**
|
|
157
157
|
* @category Error
|
|
158
|
-
* @description Error indicates an invalid or unparseable ledger response
|
|
158
|
+
* @description Error that indicates an invalid or unparseable ledger response
|
|
159
159
|
*/
|
|
160
160
|
class InvalidLedgerResponseError extends TaquitoError {
|
|
161
161
|
constructor(message) {
|
|
@@ -166,7 +166,7 @@ class InvalidLedgerResponseError extends TaquitoError {
|
|
|
166
166
|
}
|
|
167
167
|
/**
|
|
168
168
|
* @category Error
|
|
169
|
-
* @description Error indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
169
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
170
170
|
*/
|
|
171
171
|
class PublicKeyRetrievalError extends TaquitoError {
|
|
172
172
|
constructor(cause) {
|
|
@@ -178,7 +178,7 @@ class PublicKeyRetrievalError extends TaquitoError {
|
|
|
178
178
|
}
|
|
179
179
|
/**
|
|
180
180
|
* @category Error
|
|
181
|
-
* @description Error indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
181
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
182
182
|
*/
|
|
183
183
|
class PublicKeyHashRetrievalError extends TaquitoError {
|
|
184
184
|
constructor() {
|
|
@@ -189,7 +189,7 @@ class PublicKeyHashRetrievalError extends TaquitoError {
|
|
|
189
189
|
}
|
|
190
190
|
/**
|
|
191
191
|
* @category Error
|
|
192
|
-
* @description Error indicates an invalid derivation type being passed or used
|
|
192
|
+
* @description Error that indicates an invalid derivation type being passed or used
|
|
193
193
|
*/
|
|
194
194
|
class InvalidDerivationTypeError extends ParameterValidationError {
|
|
195
195
|
constructor(derivationType) {
|
|
@@ -202,8 +202,8 @@ class InvalidDerivationTypeError extends ParameterValidationError {
|
|
|
202
202
|
|
|
203
203
|
// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!
|
|
204
204
|
const VERSION = {
|
|
205
|
-
"commitHash": "
|
|
206
|
-
"version": "17.
|
|
205
|
+
"commitHash": "96c9d60e1d08c7ac01d81e4d23ba5038c7779c92",
|
|
206
|
+
"version": "17.2.0-beta-RC.0"
|
|
207
207
|
};
|
|
208
208
|
|
|
209
209
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taquito-ledger-signer.es6.js","sources":["../src/utils.ts","../src/errors.ts","../src/version.ts","../src/taquito-ledger-signer.ts"],"sourcesContent":["/*\n * Some code in this file is adapted from sotez\n * Copyright (c) 2018 Andrew Kishino\n */\n\nimport { DerivationType } from './taquito-ledger-signer';\n\nconst MAX_CHUNK_SIZE = 230;\n\n/**\n *\n * @description Convert the path to a buffer that will be used as LC and CDATA in the APDU send to the ledger device (https://github.com/obsidiansystems/ledger-app-tezos/blob/master/APDUs.md)\n *\n * @param path The ledger derivation path (default is \"44'/1729'/0'/0'\")\n * @returns A buffer where the first element is the length of the path (default is 4), then 3 bytes for each number of the path to which is added 0x8000000\n */\nexport function transformPathToBuffer(path: string): Buffer {\n const result: number[] = [];\n const components = path.split('/');\n components.forEach((element) => {\n let toNumber = parseInt(element, 10);\n if (Number.isNaN(toNumber)) {\n return;\n }\n if (element.length > 1 && element[element.length - 1] === \"'\") {\n toNumber += 0x80000000;\n }\n result.push(toNumber);\n });\n const buffer = Buffer.alloc(1 + result.length * 4);\n buffer[0] = result.length;\n result.forEach((element, index) => {\n buffer.writeUInt32BE(element, 1 + 4 * index);\n });\n return buffer;\n}\n\n/**\n *\n * @description Converts uncompressed ledger key to standard tezos binary representation\n */\nexport function compressPublicKey(publicKey: Buffer, curve: DerivationType) {\n if (curve === 0x00 || curve === 0x03) {\n publicKey = publicKey.slice(1);\n } else {\n publicKey[0] = 0x02 + (publicKey[64] & 0x01);\n publicKey = publicKey.slice(0, 33);\n }\n return publicKey;\n}\n\nexport function appendWatermark(bytes: string, watermark?: Uint8Array): string {\n let transactionHex = bytes;\n if (typeof watermark !== 'undefined') {\n const hexWatermark = Buffer.from(watermark).toString('hex');\n transactionHex = hexWatermark.concat(bytes);\n }\n return transactionHex;\n}\n\n/**\n *\n * @description In order not to exceed the data length allowed by the Ledger device, split the operation into buffers of 230 bytes (max) and add them to the message to send to the Ledger\n * @param messageToSend The message to send to the Ledger device\n * @param operation The operation which will be chunk if its length is over 230 bytes\n * @returns The instruction to send to the Ledger device\n */\nexport function chunkOperation(messageToSend: any, operation: Buffer) {\n let offset = 0;\n while (offset !== operation.length) {\n const chunkSize =\n offset + MAX_CHUNK_SIZE >= operation.length ? operation.length - offset : MAX_CHUNK_SIZE;\n const buff = Buffer.alloc(chunkSize);\n operation.copy(buff, 0, offset, offset + chunkSize);\n messageToSend.push(buff);\n offset += chunkSize;\n }\n return messageToSend;\n}\n\n/**\n *\n * @description Verify if the signature returned by the ledger for tz2 and tz3 is valid\n * @param response The signature returned by the Ledger (return from the signWithLedger function)\n * @returns True if valid, false otherwise\n */\nexport function validateResponse(response: Buffer): boolean {\n let valid = true;\n if (response[0] !== 0x31 && response[0] !== 0x30) {\n valid = false;\n }\n if (response[1] + 4 !== response.length) {\n valid = false;\n }\n if (response[2] !== 0x02) {\n valid = false;\n }\n const rLength = response[3];\n if (response[4 + rLength] !== 0x02) {\n valid = false;\n }\n\n const idxLengthSVal = 5 + rLength;\n const sLength = response[idxLengthSVal];\n if (idxLengthSVal + 1 + sLength + 2 !== response.length) {\n valid = false;\n }\n return valid;\n}\n\n/**\n *\n * @description Extract a part of the response returned by the Ledger\n * @param idxLength The index in the response from the Ledger that corresponds to the length of the part to extract\n * @param response The signature returned by the Ledger (return from the signWithLedger function)\n * @returns An object that contains the extracted buffer, the index where it starts in the response and the length of the extracted part\n */\nexport function extractValue(idxLength: number, response: Buffer) {\n const buffer = Buffer.alloc(32);\n buffer.fill(0);\n\n let length = response[idxLength];\n let idxValueStart = idxLength + 1;\n if (length > 32) {\n idxValueStart += length - 32;\n length = 32;\n }\n response.copy(buffer, 32 - length, idxValueStart, idxValueStart + length);\n return { buffer, idxValueStart, length };\n}\n","import { ParameterValidationError, TaquitoError } from '@taquito/core';\n\n/**\n * @category Error\n * @description Error indicates an invalid or unparseable ledger response\n */\nexport class InvalidLedgerResponseError extends TaquitoError {\n constructor(public readonly message: string) {\n super();\n this.name = 'InvalidLedgerResponseError';\n }\n}\n\n/**\n * @category Error\n * @description Error indicates a failure when trying to retrieve a Public Key from Ledger signer\n */\nexport class PublicKeyRetrievalError extends TaquitoError {\n constructor(public readonly cause: any) {\n super();\n this.name = 'PublicKeyRetrievalError';\n this.message = `Unable to retrieve Public Key from Ledger`;\n }\n}\n\n/**\n * @category Error\n * @description Error indicates a failure when trying to retrieve a Public Key Hash from Ledger signer\n */\nexport class PublicKeyHashRetrievalError extends TaquitoError {\n constructor() {\n super();\n this.name = 'PublicKeyHashRetrievalError';\n this.message = 'Unable to retrieve Public Key Hash from Ledger';\n }\n}\n\n/**\n * @category Error\n * @description Error indicates an invalid derivation type being passed or used\n */\nexport class InvalidDerivationTypeError extends ParameterValidationError {\n constructor(public readonly derivationType: string) {\n super();\n this.name = 'InvalidDerivationTypeError';\n this.message = `Invalid derivation type ${derivationType} expecting one of the following: DerivationType.ED25519, DerivationType.SECP256K1, DerivationType.P256 or DerivationType.BIP32_ED25519`;\n }\n}\n","\n// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!\nexport const VERSION = {\n \"commitHash\": \"a23fb981e79462489c07a1e4656f310390cb1148\",\n \"version\": \"17.1.0\"\n};\n","/**\n * @packageDocumentation\n * @module @taquito/ledger-signer\n */\n\nimport { Signer } from '@taquito/taquito';\nimport Transport from '@ledgerhq/hw-transport';\nimport { b58cencode, invalidDetail, prefix, Prefix, ValidationResult } from '@taquito/utils';\nimport {\n appendWatermark,\n transformPathToBuffer,\n compressPublicKey,\n chunkOperation,\n validateResponse,\n extractValue,\n} from './utils';\nimport { hash } from '@stablelib/blake2b';\nimport {\n PublicKeyHashRetrievalError,\n PublicKeyRetrievalError,\n InvalidLedgerResponseError,\n InvalidDerivationTypeError,\n} from './errors';\nimport { InvalidDerivationPathError, ProhibitedActionError } from '@taquito/core';\n\nexport { InvalidDerivationPathError } from '@taquito/core';\n\nexport type LedgerTransport = Pick<Transport, 'send' | 'decorateAppAPIMethods' | 'setScrambleKey'>;\n\nexport enum DerivationType {\n ED25519 = 0x00, // tz1\n SECP256K1 = 0x01, // tz2\n P256 = 0x02, // tz3\n BIP32_ED25519 = 0x03, // tz1 BIP32\n}\n\nexport { InvalidDerivationTypeError } from './errors';\n\nexport const HDPathTemplate = (account: number) => {\n return `44'/1729'/${account}'/0'`;\n};\n\nexport { VERSION } from './version';\n\n/**\n *\n * @description Implementation of the Signer interface that will allow signing operation from a Ledger Nano device\n *\n * @param transport A transport instance from LedgerJS libraries depending on the platform used (e.g. Web, Node)\n * @param path The ledger derivation path (default is \"44'/1729'/0'/0'\")\n * @param prompt Whether to prompt the ledger for public key (default is true)\n * @param derivationType The value which defines the curve to use (DerivationType.ED25519(default), DerivationType.SECP256K1, DerivationType.P256, DerivationType.BIP32_ED25519)\n *\n * @example\n * ```\n * import TransportNodeHid from \"@ledgerhq/hw-transport-node-hid\";\n * const transport = await TransportNodeHid.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/0'/0'\", false, DerivationType.ED25519);\n * ```\n *\n * @example\n * ```\n * import TransportU2F from \"@ledgerhq/hw-transport-u2f\";\n * const transport = await TransportU2F.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/0'/0'\", true, DerivationType.SECP256K1);\n * ```\n *\n * @example\n * ```\n * import TransportU2F from \"@ledgerhq/hw-transport-u2f\";\n * const transport = await TransportU2F.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/6'/0'\", true, DerivationType.BIP32_ED25519);\n * ```\n */\nexport class LedgerSigner implements Signer {\n // constants for APDU requests (https://github.com/obsidiansystems/ledger-app-tezos/blob/master/APDUs.md)\n private readonly CLA = 0x80; // Instruction class (always 0x80)\n private readonly INS_GET_PUBLIC_KEY = 0x02; // Instruction code to get the ledger’s internal public key without prompt\n private readonly INS_PROMPT_PUBLIC_KEY = 0x03; // Instruction code to get the ledger’s internal public key with prompt\n private readonly INS_SIGN = 0x04; // Sign a message with the ledger’s key\n private readonly FIRST_MESSAGE_SEQUENCE = 0x00;\n private readonly LAST_MESSAGE_SEQUENCE = 0x81;\n private readonly OTHER_MESSAGE_SEQUENCE = 0x01;\n\n private _publicKey?: string;\n private _publicKeyHash?: string;\n constructor(\n private transport: LedgerTransport,\n private path: string = \"44'/1729'/0'/0'\",\n private prompt: boolean = true,\n private derivationType: DerivationType = DerivationType.ED25519\n ) {\n this.transport.setScrambleKey('XTZ');\n if (!path.startsWith(`44'/1729'`)) {\n throw new InvalidDerivationPathError(\n path,\n `${invalidDetail(ValidationResult.NO_PREFIX_MATCHED)} expecting prefix \"44'/1729'\".`\n );\n }\n if (!Object.values(DerivationType).includes(derivationType)) {\n throw new InvalidDerivationTypeError(derivationType.toString());\n }\n }\n\n async publicKeyHash(): Promise<string> {\n if (!this._publicKeyHash) {\n await this.publicKey();\n }\n if (this._publicKeyHash) {\n return this._publicKeyHash;\n }\n throw new PublicKeyHashRetrievalError();\n }\n\n async publicKey(): Promise<string> {\n if (this._publicKey) {\n return this._publicKey;\n }\n const responseLedger = await this.getLedgerPublicKey();\n const publicKeyLength = responseLedger[0];\n const rawPublicKey = responseLedger.slice(1, 1 + publicKeyLength);\n const compressedPublicKey = compressPublicKey(rawPublicKey, this.derivationType);\n\n const prefixes = this.getPrefixes();\n const publicKey = b58cencode(compressedPublicKey, prefixes.prefPk);\n const publicKeyHash = b58cencode(hash(compressedPublicKey, 20), prefixes.prefPkh);\n\n this._publicKey = publicKey;\n this._publicKeyHash = publicKeyHash;\n return publicKey;\n }\n\n private async getLedgerPublicKey(): Promise<Buffer> {\n try {\n let ins = this.INS_PROMPT_PUBLIC_KEY;\n if (this.prompt === false) {\n ins = this.INS_GET_PUBLIC_KEY;\n }\n const responseLedger = await this.transport.send(\n this.CLA,\n ins,\n this.FIRST_MESSAGE_SEQUENCE,\n this.derivationType,\n transformPathToBuffer(this.path)\n );\n return responseLedger;\n } catch (error) {\n throw new PublicKeyRetrievalError(error);\n }\n }\n\n async secretKey(): Promise<string> {\n throw new ProhibitedActionError('Secret key cannot be exposed');\n }\n\n async sign(bytes: string, watermark?: Uint8Array) {\n const watermarkedBytes = appendWatermark(bytes, watermark);\n const watermarkedBytes2buff = Buffer.from(watermarkedBytes, 'hex');\n let messageToSend = [];\n messageToSend.push(transformPathToBuffer(this.path));\n messageToSend = chunkOperation(messageToSend, watermarkedBytes2buff);\n const ledgerResponse = await this.signWithLedger(messageToSend);\n let signature;\n if (\n this.derivationType === DerivationType.ED25519 ||\n this.derivationType === DerivationType.BIP32_ED25519\n ) {\n signature = ledgerResponse.slice(0, ledgerResponse.length - 2).toString('hex');\n } else {\n if (!validateResponse(ledgerResponse)) {\n throw new InvalidLedgerResponseError(\n 'Invalid signature return by ledger unable to parse the response'\n );\n }\n const idxLengthRVal = 3; // Third element of response is length of r value\n const rValue = extractValue(idxLengthRVal, ledgerResponse);\n const idxLengthSVal = rValue.idxValueStart + rValue.length + 1;\n const sValue = extractValue(idxLengthSVal, ledgerResponse);\n const signatureBuffer = Buffer.concat([rValue.buffer, sValue.buffer]);\n signature = signatureBuffer.toString('hex');\n }\n\n return {\n bytes,\n sig: b58cencode(signature, prefix[Prefix.SIG]),\n prefixSig: b58cencode(signature, this.getPrefixes().prefSig),\n sbytes: bytes + signature,\n };\n }\n\n private async signWithLedger(message: Buffer[]): Promise<Buffer> {\n // first element of the message represents the path\n let ledgerResponse = await this.transport.send(\n this.CLA,\n this.INS_SIGN,\n this.FIRST_MESSAGE_SEQUENCE,\n this.derivationType,\n message[0]\n );\n for (let i = 1; i < message.length; i++) {\n const p1 =\n i === message.length - 1 ? this.LAST_MESSAGE_SEQUENCE : this.OTHER_MESSAGE_SEQUENCE;\n ledgerResponse = await this.transport.send(\n this.CLA,\n this.INS_SIGN,\n p1,\n this.derivationType,\n message[i]\n );\n }\n return ledgerResponse;\n }\n\n private getPrefixes() {\n if (\n this.derivationType === DerivationType.ED25519 ||\n this.derivationType === DerivationType.BIP32_ED25519\n ) {\n return {\n prefPk: prefix[Prefix.EDPK],\n prefPkh: prefix[Prefix.TZ1],\n prefSig: prefix[Prefix.EDSIG],\n };\n } else if (this.derivationType === DerivationType.SECP256K1) {\n return {\n prefPk: prefix[Prefix.SPPK],\n prefPkh: prefix[Prefix.TZ2],\n prefSig: prefix[Prefix.SPSIG],\n };\n } else {\n return {\n prefPk: prefix[Prefix.P2PK],\n prefPkh: prefix[Prefix.TZ3],\n prefSig: prefix[Prefix.P2SIG],\n };\n }\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taquito-ledger-signer.es6.js","sources":["../src/utils.ts","../src/errors.ts","../src/version.ts","../src/taquito-ledger-signer.ts"],"sourcesContent":["/*\n * Some code in this file is adapted from sotez\n * Copyright (c) 2018 Andrew Kishino\n */\n\nimport { DerivationType } from './taquito-ledger-signer';\n\nconst MAX_CHUNK_SIZE = 230;\n\n/**\n *\n * @description Convert the path to a buffer that will be used as LC and CDATA in the APDU send to the ledger device (https://github.com/obsidiansystems/ledger-app-tezos/blob/master/APDUs.md)\n *\n * @param path The ledger derivation path (default is \"44'/1729'/0'/0'\")\n * @returns A buffer where the first element is the length of the path (default is 4), then 3 bytes for each number of the path to which is added 0x8000000\n */\nexport function transformPathToBuffer(path: string): Buffer {\n const result: number[] = [];\n const components = path.split('/');\n components.forEach((element) => {\n let toNumber = parseInt(element, 10);\n if (Number.isNaN(toNumber)) {\n return;\n }\n if (element.length > 1 && element[element.length - 1] === \"'\") {\n toNumber += 0x80000000;\n }\n result.push(toNumber);\n });\n const buffer = Buffer.alloc(1 + result.length * 4);\n buffer[0] = result.length;\n result.forEach((element, index) => {\n buffer.writeUInt32BE(element, 1 + 4 * index);\n });\n return buffer;\n}\n\n/**\n *\n * @description Converts uncompressed ledger key to standard tezos binary representation\n */\nexport function compressPublicKey(publicKey: Buffer, curve: DerivationType) {\n if (curve === 0x00 || curve === 0x03) {\n publicKey = publicKey.slice(1);\n } else {\n publicKey[0] = 0x02 + (publicKey[64] & 0x01);\n publicKey = publicKey.slice(0, 33);\n }\n return publicKey;\n}\n\nexport function appendWatermark(bytes: string, watermark?: Uint8Array): string {\n let transactionHex = bytes;\n if (typeof watermark !== 'undefined') {\n const hexWatermark = Buffer.from(watermark).toString('hex');\n transactionHex = hexWatermark.concat(bytes);\n }\n return transactionHex;\n}\n\n/**\n *\n * @description In order not to exceed the data length allowed by the Ledger device, split the operation into buffers of 230 bytes (max) and add them to the message to send to the Ledger\n * @param messageToSend The message to send to the Ledger device\n * @param operation The operation which will be chunk if its length is over 230 bytes\n * @returns The instruction to send to the Ledger device\n */\nexport function chunkOperation(messageToSend: any, operation: Buffer) {\n let offset = 0;\n while (offset !== operation.length) {\n const chunkSize =\n offset + MAX_CHUNK_SIZE >= operation.length ? operation.length - offset : MAX_CHUNK_SIZE;\n const buff = Buffer.alloc(chunkSize);\n operation.copy(buff, 0, offset, offset + chunkSize);\n messageToSend.push(buff);\n offset += chunkSize;\n }\n return messageToSend;\n}\n\n/**\n *\n * @description Verify if the signature returned by the ledger for tz2 and tz3 is valid\n * @param response The signature returned by the Ledger (return from the signWithLedger function)\n * @returns True if valid, false otherwise\n */\nexport function validateResponse(response: Buffer): boolean {\n let valid = true;\n if (response[0] !== 0x31 && response[0] !== 0x30) {\n valid = false;\n }\n if (response[1] + 4 !== response.length) {\n valid = false;\n }\n if (response[2] !== 0x02) {\n valid = false;\n }\n const rLength = response[3];\n if (response[4 + rLength] !== 0x02) {\n valid = false;\n }\n\n const idxLengthSVal = 5 + rLength;\n const sLength = response[idxLengthSVal];\n if (idxLengthSVal + 1 + sLength + 2 !== response.length) {\n valid = false;\n }\n return valid;\n}\n\n/**\n *\n * @description Extract a part of the response returned by the Ledger\n * @param idxLength The index in the response from the Ledger that corresponds to the length of the part to extract\n * @param response The signature returned by the Ledger (return from the signWithLedger function)\n * @returns An object that contains the extracted buffer, the index where it starts in the response and the length of the extracted part\n */\nexport function extractValue(idxLength: number, response: Buffer) {\n const buffer = Buffer.alloc(32);\n buffer.fill(0);\n\n let length = response[idxLength];\n let idxValueStart = idxLength + 1;\n if (length > 32) {\n idxValueStart += length - 32;\n length = 32;\n }\n response.copy(buffer, 32 - length, idxValueStart, idxValueStart + length);\n return { buffer, idxValueStart, length };\n}\n","import { ParameterValidationError, TaquitoError } from '@taquito/core';\n\n/**\n * @category Error\n * @description Error that indicates an invalid or unparseable ledger response\n */\nexport class InvalidLedgerResponseError extends TaquitoError {\n constructor(public readonly message: string) {\n super();\n this.name = 'InvalidLedgerResponseError';\n }\n}\n\n/**\n * @category Error\n * @description Error that indicates a failure when trying to retrieve a Public Key from Ledger signer\n */\nexport class PublicKeyRetrievalError extends TaquitoError {\n constructor(public readonly cause: any) {\n super();\n this.name = 'PublicKeyRetrievalError';\n this.message = `Unable to retrieve Public Key from Ledger`;\n }\n}\n\n/**\n * @category Error\n * @description Error that indicates a failure when trying to retrieve a Public Key Hash from Ledger signer\n */\nexport class PublicKeyHashRetrievalError extends TaquitoError {\n constructor() {\n super();\n this.name = 'PublicKeyHashRetrievalError';\n this.message = 'Unable to retrieve Public Key Hash from Ledger';\n }\n}\n\n/**\n * @category Error\n * @description Error that indicates an invalid derivation type being passed or used\n */\nexport class InvalidDerivationTypeError extends ParameterValidationError {\n constructor(public readonly derivationType: string) {\n super();\n this.name = 'InvalidDerivationTypeError';\n this.message = `Invalid derivation type ${derivationType} expecting one of the following: DerivationType.ED25519, DerivationType.SECP256K1, DerivationType.P256 or DerivationType.BIP32_ED25519`;\n }\n}\n","\n// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!\nexport const VERSION = {\n \"commitHash\": \"96c9d60e1d08c7ac01d81e4d23ba5038c7779c92\",\n \"version\": \"17.2.0-beta-RC.0\"\n};\n","/**\n * @packageDocumentation\n * @module @taquito/ledger-signer\n */\n\nimport { Signer } from '@taquito/taquito';\nimport Transport from '@ledgerhq/hw-transport';\nimport { b58cencode, invalidDetail, prefix, Prefix, ValidationResult } from '@taquito/utils';\nimport {\n appendWatermark,\n transformPathToBuffer,\n compressPublicKey,\n chunkOperation,\n validateResponse,\n extractValue,\n} from './utils';\nimport { hash } from '@stablelib/blake2b';\nimport {\n PublicKeyHashRetrievalError,\n PublicKeyRetrievalError,\n InvalidLedgerResponseError,\n InvalidDerivationTypeError,\n} from './errors';\nimport { InvalidDerivationPathError, ProhibitedActionError } from '@taquito/core';\n\nexport { InvalidDerivationPathError } from '@taquito/core';\n\nexport type LedgerTransport = Pick<Transport, 'send' | 'decorateAppAPIMethods' | 'setScrambleKey'>;\n\nexport enum DerivationType {\n ED25519 = 0x00, // tz1\n SECP256K1 = 0x01, // tz2\n P256 = 0x02, // tz3\n BIP32_ED25519 = 0x03, // tz1 BIP32\n}\n\nexport { InvalidDerivationTypeError } from './errors';\n\nexport const HDPathTemplate = (account: number) => {\n return `44'/1729'/${account}'/0'`;\n};\n\nexport { VERSION } from './version';\n\n/**\n *\n * @description Implementation of the Signer interface that will allow signing operation from a Ledger Nano device\n *\n * @param transport A transport instance from LedgerJS libraries depending on the platform used (e.g. Web, Node)\n * @param path The ledger derivation path (default is \"44'/1729'/0'/0'\")\n * @param prompt Whether to prompt the ledger for public key (default is true)\n * @param derivationType The value which defines the curve to use (DerivationType.ED25519(default), DerivationType.SECP256K1, DerivationType.P256, DerivationType.BIP32_ED25519)\n *\n * @example\n * ```\n * import TransportNodeHid from \"@ledgerhq/hw-transport-node-hid\";\n * const transport = await TransportNodeHid.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/0'/0'\", false, DerivationType.ED25519);\n * ```\n *\n * @example\n * ```\n * import TransportU2F from \"@ledgerhq/hw-transport-u2f\";\n * const transport = await TransportU2F.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/0'/0'\", true, DerivationType.SECP256K1);\n * ```\n *\n * @example\n * ```\n * import TransportU2F from \"@ledgerhq/hw-transport-u2f\";\n * const transport = await TransportU2F.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/6'/0'\", true, DerivationType.BIP32_ED25519);\n * ```\n */\nexport class LedgerSigner implements Signer {\n // constants for APDU requests (https://github.com/obsidiansystems/ledger-app-tezos/blob/master/APDUs.md)\n private readonly CLA = 0x80; // Instruction class (always 0x80)\n private readonly INS_GET_PUBLIC_KEY = 0x02; // Instruction code to get the ledger’s internal public key without prompt\n private readonly INS_PROMPT_PUBLIC_KEY = 0x03; // Instruction code to get the ledger’s internal public key with prompt\n private readonly INS_SIGN = 0x04; // Sign a message with the ledger’s key\n private readonly FIRST_MESSAGE_SEQUENCE = 0x00;\n private readonly LAST_MESSAGE_SEQUENCE = 0x81;\n private readonly OTHER_MESSAGE_SEQUENCE = 0x01;\n\n private _publicKey?: string;\n private _publicKeyHash?: string;\n constructor(\n private transport: LedgerTransport,\n private path: string = \"44'/1729'/0'/0'\",\n private prompt: boolean = true,\n private derivationType: DerivationType = DerivationType.ED25519\n ) {\n this.transport.setScrambleKey('XTZ');\n if (!path.startsWith(`44'/1729'`)) {\n throw new InvalidDerivationPathError(\n path,\n `${invalidDetail(ValidationResult.NO_PREFIX_MATCHED)} expecting prefix \"44'/1729'\".`\n );\n }\n if (!Object.values(DerivationType).includes(derivationType)) {\n throw new InvalidDerivationTypeError(derivationType.toString());\n }\n }\n\n async publicKeyHash(): Promise<string> {\n if (!this._publicKeyHash) {\n await this.publicKey();\n }\n if (this._publicKeyHash) {\n return this._publicKeyHash;\n }\n throw new PublicKeyHashRetrievalError();\n }\n\n async publicKey(): Promise<string> {\n if (this._publicKey) {\n return this._publicKey;\n }\n const responseLedger = await this.getLedgerPublicKey();\n const publicKeyLength = responseLedger[0];\n const rawPublicKey = responseLedger.slice(1, 1 + publicKeyLength);\n const compressedPublicKey = compressPublicKey(rawPublicKey, this.derivationType);\n\n const prefixes = this.getPrefixes();\n const publicKey = b58cencode(compressedPublicKey, prefixes.prefPk);\n const publicKeyHash = b58cencode(hash(compressedPublicKey, 20), prefixes.prefPkh);\n\n this._publicKey = publicKey;\n this._publicKeyHash = publicKeyHash;\n return publicKey;\n }\n\n private async getLedgerPublicKey(): Promise<Buffer> {\n try {\n let ins = this.INS_PROMPT_PUBLIC_KEY;\n if (this.prompt === false) {\n ins = this.INS_GET_PUBLIC_KEY;\n }\n const responseLedger = await this.transport.send(\n this.CLA,\n ins,\n this.FIRST_MESSAGE_SEQUENCE,\n this.derivationType,\n transformPathToBuffer(this.path)\n );\n return responseLedger;\n } catch (error) {\n throw new PublicKeyRetrievalError(error);\n }\n }\n\n async secretKey(): Promise<string> {\n throw new ProhibitedActionError('Secret key cannot be exposed');\n }\n\n async sign(bytes: string, watermark?: Uint8Array) {\n const watermarkedBytes = appendWatermark(bytes, watermark);\n const watermarkedBytes2buff = Buffer.from(watermarkedBytes, 'hex');\n let messageToSend = [];\n messageToSend.push(transformPathToBuffer(this.path));\n messageToSend = chunkOperation(messageToSend, watermarkedBytes2buff);\n const ledgerResponse = await this.signWithLedger(messageToSend);\n let signature;\n if (\n this.derivationType === DerivationType.ED25519 ||\n this.derivationType === DerivationType.BIP32_ED25519\n ) {\n signature = ledgerResponse.slice(0, ledgerResponse.length - 2).toString('hex');\n } else {\n if (!validateResponse(ledgerResponse)) {\n throw new InvalidLedgerResponseError(\n 'Invalid signature return by ledger unable to parse the response'\n );\n }\n const idxLengthRVal = 3; // Third element of response is length of r value\n const rValue = extractValue(idxLengthRVal, ledgerResponse);\n const idxLengthSVal = rValue.idxValueStart + rValue.length + 1;\n const sValue = extractValue(idxLengthSVal, ledgerResponse);\n const signatureBuffer = Buffer.concat([rValue.buffer, sValue.buffer]);\n signature = signatureBuffer.toString('hex');\n }\n\n return {\n bytes,\n sig: b58cencode(signature, prefix[Prefix.SIG]),\n prefixSig: b58cencode(signature, this.getPrefixes().prefSig),\n sbytes: bytes + signature,\n };\n }\n\n private async signWithLedger(message: Buffer[]): Promise<Buffer> {\n // first element of the message represents the path\n let ledgerResponse = await this.transport.send(\n this.CLA,\n this.INS_SIGN,\n this.FIRST_MESSAGE_SEQUENCE,\n this.derivationType,\n message[0]\n );\n for (let i = 1; i < message.length; i++) {\n const p1 =\n i === message.length - 1 ? this.LAST_MESSAGE_SEQUENCE : this.OTHER_MESSAGE_SEQUENCE;\n ledgerResponse = await this.transport.send(\n this.CLA,\n this.INS_SIGN,\n p1,\n this.derivationType,\n message[i]\n );\n }\n return ledgerResponse;\n }\n\n private getPrefixes() {\n if (\n this.derivationType === DerivationType.ED25519 ||\n this.derivationType === DerivationType.BIP32_ED25519\n ) {\n return {\n prefPk: prefix[Prefix.EDPK],\n prefPkh: prefix[Prefix.TZ1],\n prefSig: prefix[Prefix.EDSIG],\n };\n } else if (this.derivationType === DerivationType.SECP256K1) {\n return {\n prefPk: prefix[Prefix.SPPK],\n prefPkh: prefix[Prefix.TZ2],\n prefSig: prefix[Prefix.SPSIG],\n };\n } else {\n return {\n prefPk: prefix[Prefix.P2PK],\n prefPkh: prefix[Prefix.TZ3],\n prefSig: prefix[Prefix.P2SIG],\n };\n }\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -156,7 +156,7 @@
|
|
|
156
156
|
|
|
157
157
|
/**
|
|
158
158
|
* @category Error
|
|
159
|
-
* @description Error indicates an invalid or unparseable ledger response
|
|
159
|
+
* @description Error that indicates an invalid or unparseable ledger response
|
|
160
160
|
*/
|
|
161
161
|
class InvalidLedgerResponseError extends core.TaquitoError {
|
|
162
162
|
constructor(message) {
|
|
@@ -167,7 +167,7 @@
|
|
|
167
167
|
}
|
|
168
168
|
/**
|
|
169
169
|
* @category Error
|
|
170
|
-
* @description Error indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
170
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
171
171
|
*/
|
|
172
172
|
class PublicKeyRetrievalError extends core.TaquitoError {
|
|
173
173
|
constructor(cause) {
|
|
@@ -179,7 +179,7 @@
|
|
|
179
179
|
}
|
|
180
180
|
/**
|
|
181
181
|
* @category Error
|
|
182
|
-
* @description Error indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
182
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
183
183
|
*/
|
|
184
184
|
class PublicKeyHashRetrievalError extends core.TaquitoError {
|
|
185
185
|
constructor() {
|
|
@@ -190,7 +190,7 @@
|
|
|
190
190
|
}
|
|
191
191
|
/**
|
|
192
192
|
* @category Error
|
|
193
|
-
* @description Error indicates an invalid derivation type being passed or used
|
|
193
|
+
* @description Error that indicates an invalid derivation type being passed or used
|
|
194
194
|
*/
|
|
195
195
|
class InvalidDerivationTypeError extends core.ParameterValidationError {
|
|
196
196
|
constructor(derivationType) {
|
|
@@ -203,8 +203,8 @@
|
|
|
203
203
|
|
|
204
204
|
// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!
|
|
205
205
|
const VERSION = {
|
|
206
|
-
"commitHash": "
|
|
207
|
-
"version": "17.
|
|
206
|
+
"commitHash": "96c9d60e1d08c7ac01d81e4d23ba5038c7779c92",
|
|
207
|
+
"version": "17.2.0-beta-RC.0"
|
|
208
208
|
};
|
|
209
209
|
|
|
210
210
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taquito-ledger-signer.umd.js","sources":["../src/utils.ts","../src/errors.ts","../src/version.ts","../src/taquito-ledger-signer.ts"],"sourcesContent":["/*\n * Some code in this file is adapted from sotez\n * Copyright (c) 2018 Andrew Kishino\n */\n\nimport { DerivationType } from './taquito-ledger-signer';\n\nconst MAX_CHUNK_SIZE = 230;\n\n/**\n *\n * @description Convert the path to a buffer that will be used as LC and CDATA in the APDU send to the ledger device (https://github.com/obsidiansystems/ledger-app-tezos/blob/master/APDUs.md)\n *\n * @param path The ledger derivation path (default is \"44'/1729'/0'/0'\")\n * @returns A buffer where the first element is the length of the path (default is 4), then 3 bytes for each number of the path to which is added 0x8000000\n */\nexport function transformPathToBuffer(path: string): Buffer {\n const result: number[] = [];\n const components = path.split('/');\n components.forEach((element) => {\n let toNumber = parseInt(element, 10);\n if (Number.isNaN(toNumber)) {\n return;\n }\n if (element.length > 1 && element[element.length - 1] === \"'\") {\n toNumber += 0x80000000;\n }\n result.push(toNumber);\n });\n const buffer = Buffer.alloc(1 + result.length * 4);\n buffer[0] = result.length;\n result.forEach((element, index) => {\n buffer.writeUInt32BE(element, 1 + 4 * index);\n });\n return buffer;\n}\n\n/**\n *\n * @description Converts uncompressed ledger key to standard tezos binary representation\n */\nexport function compressPublicKey(publicKey: Buffer, curve: DerivationType) {\n if (curve === 0x00 || curve === 0x03) {\n publicKey = publicKey.slice(1);\n } else {\n publicKey[0] = 0x02 + (publicKey[64] & 0x01);\n publicKey = publicKey.slice(0, 33);\n }\n return publicKey;\n}\n\nexport function appendWatermark(bytes: string, watermark?: Uint8Array): string {\n let transactionHex = bytes;\n if (typeof watermark !== 'undefined') {\n const hexWatermark = Buffer.from(watermark).toString('hex');\n transactionHex = hexWatermark.concat(bytes);\n }\n return transactionHex;\n}\n\n/**\n *\n * @description In order not to exceed the data length allowed by the Ledger device, split the operation into buffers of 230 bytes (max) and add them to the message to send to the Ledger\n * @param messageToSend The message to send to the Ledger device\n * @param operation The operation which will be chunk if its length is over 230 bytes\n * @returns The instruction to send to the Ledger device\n */\nexport function chunkOperation(messageToSend: any, operation: Buffer) {\n let offset = 0;\n while (offset !== operation.length) {\n const chunkSize =\n offset + MAX_CHUNK_SIZE >= operation.length ? operation.length - offset : MAX_CHUNK_SIZE;\n const buff = Buffer.alloc(chunkSize);\n operation.copy(buff, 0, offset, offset + chunkSize);\n messageToSend.push(buff);\n offset += chunkSize;\n }\n return messageToSend;\n}\n\n/**\n *\n * @description Verify if the signature returned by the ledger for tz2 and tz3 is valid\n * @param response The signature returned by the Ledger (return from the signWithLedger function)\n * @returns True if valid, false otherwise\n */\nexport function validateResponse(response: Buffer): boolean {\n let valid = true;\n if (response[0] !== 0x31 && response[0] !== 0x30) {\n valid = false;\n }\n if (response[1] + 4 !== response.length) {\n valid = false;\n }\n if (response[2] !== 0x02) {\n valid = false;\n }\n const rLength = response[3];\n if (response[4 + rLength] !== 0x02) {\n valid = false;\n }\n\n const idxLengthSVal = 5 + rLength;\n const sLength = response[idxLengthSVal];\n if (idxLengthSVal + 1 + sLength + 2 !== response.length) {\n valid = false;\n }\n return valid;\n}\n\n/**\n *\n * @description Extract a part of the response returned by the Ledger\n * @param idxLength The index in the response from the Ledger that corresponds to the length of the part to extract\n * @param response The signature returned by the Ledger (return from the signWithLedger function)\n * @returns An object that contains the extracted buffer, the index where it starts in the response and the length of the extracted part\n */\nexport function extractValue(idxLength: number, response: Buffer) {\n const buffer = Buffer.alloc(32);\n buffer.fill(0);\n\n let length = response[idxLength];\n let idxValueStart = idxLength + 1;\n if (length > 32) {\n idxValueStart += length - 32;\n length = 32;\n }\n response.copy(buffer, 32 - length, idxValueStart, idxValueStart + length);\n return { buffer, idxValueStart, length };\n}\n","import { ParameterValidationError, TaquitoError } from '@taquito/core';\n\n/**\n * @category Error\n * @description Error indicates an invalid or unparseable ledger response\n */\nexport class InvalidLedgerResponseError extends TaquitoError {\n constructor(public readonly message: string) {\n super();\n this.name = 'InvalidLedgerResponseError';\n }\n}\n\n/**\n * @category Error\n * @description Error indicates a failure when trying to retrieve a Public Key from Ledger signer\n */\nexport class PublicKeyRetrievalError extends TaquitoError {\n constructor(public readonly cause: any) {\n super();\n this.name = 'PublicKeyRetrievalError';\n this.message = `Unable to retrieve Public Key from Ledger`;\n }\n}\n\n/**\n * @category Error\n * @description Error indicates a failure when trying to retrieve a Public Key Hash from Ledger signer\n */\nexport class PublicKeyHashRetrievalError extends TaquitoError {\n constructor() {\n super();\n this.name = 'PublicKeyHashRetrievalError';\n this.message = 'Unable to retrieve Public Key Hash from Ledger';\n }\n}\n\n/**\n * @category Error\n * @description Error indicates an invalid derivation type being passed or used\n */\nexport class InvalidDerivationTypeError extends ParameterValidationError {\n constructor(public readonly derivationType: string) {\n super();\n this.name = 'InvalidDerivationTypeError';\n this.message = `Invalid derivation type ${derivationType} expecting one of the following: DerivationType.ED25519, DerivationType.SECP256K1, DerivationType.P256 or DerivationType.BIP32_ED25519`;\n }\n}\n","\n// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!\nexport const VERSION = {\n \"commitHash\": \"a23fb981e79462489c07a1e4656f310390cb1148\",\n \"version\": \"17.1.0\"\n};\n","/**\n * @packageDocumentation\n * @module @taquito/ledger-signer\n */\n\nimport { Signer } from '@taquito/taquito';\nimport Transport from '@ledgerhq/hw-transport';\nimport { b58cencode, invalidDetail, prefix, Prefix, ValidationResult } from '@taquito/utils';\nimport {\n appendWatermark,\n transformPathToBuffer,\n compressPublicKey,\n chunkOperation,\n validateResponse,\n extractValue,\n} from './utils';\nimport { hash } from '@stablelib/blake2b';\nimport {\n PublicKeyHashRetrievalError,\n PublicKeyRetrievalError,\n InvalidLedgerResponseError,\n InvalidDerivationTypeError,\n} from './errors';\nimport { InvalidDerivationPathError, ProhibitedActionError } from '@taquito/core';\n\nexport { InvalidDerivationPathError } from '@taquito/core';\n\nexport type LedgerTransport = Pick<Transport, 'send' | 'decorateAppAPIMethods' | 'setScrambleKey'>;\n\nexport enum DerivationType {\n ED25519 = 0x00, // tz1\n SECP256K1 = 0x01, // tz2\n P256 = 0x02, // tz3\n BIP32_ED25519 = 0x03, // tz1 BIP32\n}\n\nexport { InvalidDerivationTypeError } from './errors';\n\nexport const HDPathTemplate = (account: number) => {\n return `44'/1729'/${account}'/0'`;\n};\n\nexport { VERSION } from './version';\n\n/**\n *\n * @description Implementation of the Signer interface that will allow signing operation from a Ledger Nano device\n *\n * @param transport A transport instance from LedgerJS libraries depending on the platform used (e.g. Web, Node)\n * @param path The ledger derivation path (default is \"44'/1729'/0'/0'\")\n * @param prompt Whether to prompt the ledger for public key (default is true)\n * @param derivationType The value which defines the curve to use (DerivationType.ED25519(default), DerivationType.SECP256K1, DerivationType.P256, DerivationType.BIP32_ED25519)\n *\n * @example\n * ```\n * import TransportNodeHid from \"@ledgerhq/hw-transport-node-hid\";\n * const transport = await TransportNodeHid.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/0'/0'\", false, DerivationType.ED25519);\n * ```\n *\n * @example\n * ```\n * import TransportU2F from \"@ledgerhq/hw-transport-u2f\";\n * const transport = await TransportU2F.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/0'/0'\", true, DerivationType.SECP256K1);\n * ```\n *\n * @example\n * ```\n * import TransportU2F from \"@ledgerhq/hw-transport-u2f\";\n * const transport = await TransportU2F.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/6'/0'\", true, DerivationType.BIP32_ED25519);\n * ```\n */\nexport class LedgerSigner implements Signer {\n // constants for APDU requests (https://github.com/obsidiansystems/ledger-app-tezos/blob/master/APDUs.md)\n private readonly CLA = 0x80; // Instruction class (always 0x80)\n private readonly INS_GET_PUBLIC_KEY = 0x02; // Instruction code to get the ledger’s internal public key without prompt\n private readonly INS_PROMPT_PUBLIC_KEY = 0x03; // Instruction code to get the ledger’s internal public key with prompt\n private readonly INS_SIGN = 0x04; // Sign a message with the ledger’s key\n private readonly FIRST_MESSAGE_SEQUENCE = 0x00;\n private readonly LAST_MESSAGE_SEQUENCE = 0x81;\n private readonly OTHER_MESSAGE_SEQUENCE = 0x01;\n\n private _publicKey?: string;\n private _publicKeyHash?: string;\n constructor(\n private transport: LedgerTransport,\n private path: string = \"44'/1729'/0'/0'\",\n private prompt: boolean = true,\n private derivationType: DerivationType = DerivationType.ED25519\n ) {\n this.transport.setScrambleKey('XTZ');\n if (!path.startsWith(`44'/1729'`)) {\n throw new InvalidDerivationPathError(\n path,\n `${invalidDetail(ValidationResult.NO_PREFIX_MATCHED)} expecting prefix \"44'/1729'\".`\n );\n }\n if (!Object.values(DerivationType).includes(derivationType)) {\n throw new InvalidDerivationTypeError(derivationType.toString());\n }\n }\n\n async publicKeyHash(): Promise<string> {\n if (!this._publicKeyHash) {\n await this.publicKey();\n }\n if (this._publicKeyHash) {\n return this._publicKeyHash;\n }\n throw new PublicKeyHashRetrievalError();\n }\n\n async publicKey(): Promise<string> {\n if (this._publicKey) {\n return this._publicKey;\n }\n const responseLedger = await this.getLedgerPublicKey();\n const publicKeyLength = responseLedger[0];\n const rawPublicKey = responseLedger.slice(1, 1 + publicKeyLength);\n const compressedPublicKey = compressPublicKey(rawPublicKey, this.derivationType);\n\n const prefixes = this.getPrefixes();\n const publicKey = b58cencode(compressedPublicKey, prefixes.prefPk);\n const publicKeyHash = b58cencode(hash(compressedPublicKey, 20), prefixes.prefPkh);\n\n this._publicKey = publicKey;\n this._publicKeyHash = publicKeyHash;\n return publicKey;\n }\n\n private async getLedgerPublicKey(): Promise<Buffer> {\n try {\n let ins = this.INS_PROMPT_PUBLIC_KEY;\n if (this.prompt === false) {\n ins = this.INS_GET_PUBLIC_KEY;\n }\n const responseLedger = await this.transport.send(\n this.CLA,\n ins,\n this.FIRST_MESSAGE_SEQUENCE,\n this.derivationType,\n transformPathToBuffer(this.path)\n );\n return responseLedger;\n } catch (error) {\n throw new PublicKeyRetrievalError(error);\n }\n }\n\n async secretKey(): Promise<string> {\n throw new ProhibitedActionError('Secret key cannot be exposed');\n }\n\n async sign(bytes: string, watermark?: Uint8Array) {\n const watermarkedBytes = appendWatermark(bytes, watermark);\n const watermarkedBytes2buff = Buffer.from(watermarkedBytes, 'hex');\n let messageToSend = [];\n messageToSend.push(transformPathToBuffer(this.path));\n messageToSend = chunkOperation(messageToSend, watermarkedBytes2buff);\n const ledgerResponse = await this.signWithLedger(messageToSend);\n let signature;\n if (\n this.derivationType === DerivationType.ED25519 ||\n this.derivationType === DerivationType.BIP32_ED25519\n ) {\n signature = ledgerResponse.slice(0, ledgerResponse.length - 2).toString('hex');\n } else {\n if (!validateResponse(ledgerResponse)) {\n throw new InvalidLedgerResponseError(\n 'Invalid signature return by ledger unable to parse the response'\n );\n }\n const idxLengthRVal = 3; // Third element of response is length of r value\n const rValue = extractValue(idxLengthRVal, ledgerResponse);\n const idxLengthSVal = rValue.idxValueStart + rValue.length + 1;\n const sValue = extractValue(idxLengthSVal, ledgerResponse);\n const signatureBuffer = Buffer.concat([rValue.buffer, sValue.buffer]);\n signature = signatureBuffer.toString('hex');\n }\n\n return {\n bytes,\n sig: b58cencode(signature, prefix[Prefix.SIG]),\n prefixSig: b58cencode(signature, this.getPrefixes().prefSig),\n sbytes: bytes + signature,\n };\n }\n\n private async signWithLedger(message: Buffer[]): Promise<Buffer> {\n // first element of the message represents the path\n let ledgerResponse = await this.transport.send(\n this.CLA,\n this.INS_SIGN,\n this.FIRST_MESSAGE_SEQUENCE,\n this.derivationType,\n message[0]\n );\n for (let i = 1; i < message.length; i++) {\n const p1 =\n i === message.length - 1 ? this.LAST_MESSAGE_SEQUENCE : this.OTHER_MESSAGE_SEQUENCE;\n ledgerResponse = await this.transport.send(\n this.CLA,\n this.INS_SIGN,\n p1,\n this.derivationType,\n message[i]\n );\n }\n return ledgerResponse;\n }\n\n private getPrefixes() {\n if (\n this.derivationType === DerivationType.ED25519 ||\n this.derivationType === DerivationType.BIP32_ED25519\n ) {\n return {\n prefPk: prefix[Prefix.EDPK],\n prefPkh: prefix[Prefix.TZ1],\n prefSig: prefix[Prefix.EDSIG],\n };\n } else if (this.derivationType === DerivationType.SECP256K1) {\n return {\n prefPk: prefix[Prefix.SPPK],\n prefPkh: prefix[Prefix.TZ2],\n prefSig: prefix[Prefix.SPSIG],\n };\n } else {\n return {\n prefPk: prefix[Prefix.P2PK],\n prefPkh: prefix[Prefix.TZ3],\n prefSig: prefix[Prefix.P2SIG],\n };\n }\n }\n}\n"],"names":["TaquitoError","ParameterValidationError","DerivationType","InvalidDerivationPathError","invalidDetail","ValidationResult","b58cencode","hash","ProhibitedActionError","prefix","Prefix"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taquito-ledger-signer.umd.js","sources":["../src/utils.ts","../src/errors.ts","../src/version.ts","../src/taquito-ledger-signer.ts"],"sourcesContent":["/*\n * Some code in this file is adapted from sotez\n * Copyright (c) 2018 Andrew Kishino\n */\n\nimport { DerivationType } from './taquito-ledger-signer';\n\nconst MAX_CHUNK_SIZE = 230;\n\n/**\n *\n * @description Convert the path to a buffer that will be used as LC and CDATA in the APDU send to the ledger device (https://github.com/obsidiansystems/ledger-app-tezos/blob/master/APDUs.md)\n *\n * @param path The ledger derivation path (default is \"44'/1729'/0'/0'\")\n * @returns A buffer where the first element is the length of the path (default is 4), then 3 bytes for each number of the path to which is added 0x8000000\n */\nexport function transformPathToBuffer(path: string): Buffer {\n const result: number[] = [];\n const components = path.split('/');\n components.forEach((element) => {\n let toNumber = parseInt(element, 10);\n if (Number.isNaN(toNumber)) {\n return;\n }\n if (element.length > 1 && element[element.length - 1] === \"'\") {\n toNumber += 0x80000000;\n }\n result.push(toNumber);\n });\n const buffer = Buffer.alloc(1 + result.length * 4);\n buffer[0] = result.length;\n result.forEach((element, index) => {\n buffer.writeUInt32BE(element, 1 + 4 * index);\n });\n return buffer;\n}\n\n/**\n *\n * @description Converts uncompressed ledger key to standard tezos binary representation\n */\nexport function compressPublicKey(publicKey: Buffer, curve: DerivationType) {\n if (curve === 0x00 || curve === 0x03) {\n publicKey = publicKey.slice(1);\n } else {\n publicKey[0] = 0x02 + (publicKey[64] & 0x01);\n publicKey = publicKey.slice(0, 33);\n }\n return publicKey;\n}\n\nexport function appendWatermark(bytes: string, watermark?: Uint8Array): string {\n let transactionHex = bytes;\n if (typeof watermark !== 'undefined') {\n const hexWatermark = Buffer.from(watermark).toString('hex');\n transactionHex = hexWatermark.concat(bytes);\n }\n return transactionHex;\n}\n\n/**\n *\n * @description In order not to exceed the data length allowed by the Ledger device, split the operation into buffers of 230 bytes (max) and add them to the message to send to the Ledger\n * @param messageToSend The message to send to the Ledger device\n * @param operation The operation which will be chunk if its length is over 230 bytes\n * @returns The instruction to send to the Ledger device\n */\nexport function chunkOperation(messageToSend: any, operation: Buffer) {\n let offset = 0;\n while (offset !== operation.length) {\n const chunkSize =\n offset + MAX_CHUNK_SIZE >= operation.length ? operation.length - offset : MAX_CHUNK_SIZE;\n const buff = Buffer.alloc(chunkSize);\n operation.copy(buff, 0, offset, offset + chunkSize);\n messageToSend.push(buff);\n offset += chunkSize;\n }\n return messageToSend;\n}\n\n/**\n *\n * @description Verify if the signature returned by the ledger for tz2 and tz3 is valid\n * @param response The signature returned by the Ledger (return from the signWithLedger function)\n * @returns True if valid, false otherwise\n */\nexport function validateResponse(response: Buffer): boolean {\n let valid = true;\n if (response[0] !== 0x31 && response[0] !== 0x30) {\n valid = false;\n }\n if (response[1] + 4 !== response.length) {\n valid = false;\n }\n if (response[2] !== 0x02) {\n valid = false;\n }\n const rLength = response[3];\n if (response[4 + rLength] !== 0x02) {\n valid = false;\n }\n\n const idxLengthSVal = 5 + rLength;\n const sLength = response[idxLengthSVal];\n if (idxLengthSVal + 1 + sLength + 2 !== response.length) {\n valid = false;\n }\n return valid;\n}\n\n/**\n *\n * @description Extract a part of the response returned by the Ledger\n * @param idxLength The index in the response from the Ledger that corresponds to the length of the part to extract\n * @param response The signature returned by the Ledger (return from the signWithLedger function)\n * @returns An object that contains the extracted buffer, the index where it starts in the response and the length of the extracted part\n */\nexport function extractValue(idxLength: number, response: Buffer) {\n const buffer = Buffer.alloc(32);\n buffer.fill(0);\n\n let length = response[idxLength];\n let idxValueStart = idxLength + 1;\n if (length > 32) {\n idxValueStart += length - 32;\n length = 32;\n }\n response.copy(buffer, 32 - length, idxValueStart, idxValueStart + length);\n return { buffer, idxValueStart, length };\n}\n","import { ParameterValidationError, TaquitoError } from '@taquito/core';\n\n/**\n * @category Error\n * @description Error that indicates an invalid or unparseable ledger response\n */\nexport class InvalidLedgerResponseError extends TaquitoError {\n constructor(public readonly message: string) {\n super();\n this.name = 'InvalidLedgerResponseError';\n }\n}\n\n/**\n * @category Error\n * @description Error that indicates a failure when trying to retrieve a Public Key from Ledger signer\n */\nexport class PublicKeyRetrievalError extends TaquitoError {\n constructor(public readonly cause: any) {\n super();\n this.name = 'PublicKeyRetrievalError';\n this.message = `Unable to retrieve Public Key from Ledger`;\n }\n}\n\n/**\n * @category Error\n * @description Error that indicates a failure when trying to retrieve a Public Key Hash from Ledger signer\n */\nexport class PublicKeyHashRetrievalError extends TaquitoError {\n constructor() {\n super();\n this.name = 'PublicKeyHashRetrievalError';\n this.message = 'Unable to retrieve Public Key Hash from Ledger';\n }\n}\n\n/**\n * @category Error\n * @description Error that indicates an invalid derivation type being passed or used\n */\nexport class InvalidDerivationTypeError extends ParameterValidationError {\n constructor(public readonly derivationType: string) {\n super();\n this.name = 'InvalidDerivationTypeError';\n this.message = `Invalid derivation type ${derivationType} expecting one of the following: DerivationType.ED25519, DerivationType.SECP256K1, DerivationType.P256 or DerivationType.BIP32_ED25519`;\n }\n}\n","\n// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!\nexport const VERSION = {\n \"commitHash\": \"96c9d60e1d08c7ac01d81e4d23ba5038c7779c92\",\n \"version\": \"17.2.0-beta-RC.0\"\n};\n","/**\n * @packageDocumentation\n * @module @taquito/ledger-signer\n */\n\nimport { Signer } from '@taquito/taquito';\nimport Transport from '@ledgerhq/hw-transport';\nimport { b58cencode, invalidDetail, prefix, Prefix, ValidationResult } from '@taquito/utils';\nimport {\n appendWatermark,\n transformPathToBuffer,\n compressPublicKey,\n chunkOperation,\n validateResponse,\n extractValue,\n} from './utils';\nimport { hash } from '@stablelib/blake2b';\nimport {\n PublicKeyHashRetrievalError,\n PublicKeyRetrievalError,\n InvalidLedgerResponseError,\n InvalidDerivationTypeError,\n} from './errors';\nimport { InvalidDerivationPathError, ProhibitedActionError } from '@taquito/core';\n\nexport { InvalidDerivationPathError } from '@taquito/core';\n\nexport type LedgerTransport = Pick<Transport, 'send' | 'decorateAppAPIMethods' | 'setScrambleKey'>;\n\nexport enum DerivationType {\n ED25519 = 0x00, // tz1\n SECP256K1 = 0x01, // tz2\n P256 = 0x02, // tz3\n BIP32_ED25519 = 0x03, // tz1 BIP32\n}\n\nexport { InvalidDerivationTypeError } from './errors';\n\nexport const HDPathTemplate = (account: number) => {\n return `44'/1729'/${account}'/0'`;\n};\n\nexport { VERSION } from './version';\n\n/**\n *\n * @description Implementation of the Signer interface that will allow signing operation from a Ledger Nano device\n *\n * @param transport A transport instance from LedgerJS libraries depending on the platform used (e.g. Web, Node)\n * @param path The ledger derivation path (default is \"44'/1729'/0'/0'\")\n * @param prompt Whether to prompt the ledger for public key (default is true)\n * @param derivationType The value which defines the curve to use (DerivationType.ED25519(default), DerivationType.SECP256K1, DerivationType.P256, DerivationType.BIP32_ED25519)\n *\n * @example\n * ```\n * import TransportNodeHid from \"@ledgerhq/hw-transport-node-hid\";\n * const transport = await TransportNodeHid.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/0'/0'\", false, DerivationType.ED25519);\n * ```\n *\n * @example\n * ```\n * import TransportU2F from \"@ledgerhq/hw-transport-u2f\";\n * const transport = await TransportU2F.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/0'/0'\", true, DerivationType.SECP256K1);\n * ```\n *\n * @example\n * ```\n * import TransportU2F from \"@ledgerhq/hw-transport-u2f\";\n * const transport = await TransportU2F.create();\n * const ledgerSigner = new LedgerSigner(transport, \"44'/1729'/6'/0'\", true, DerivationType.BIP32_ED25519);\n * ```\n */\nexport class LedgerSigner implements Signer {\n // constants for APDU requests (https://github.com/obsidiansystems/ledger-app-tezos/blob/master/APDUs.md)\n private readonly CLA = 0x80; // Instruction class (always 0x80)\n private readonly INS_GET_PUBLIC_KEY = 0x02; // Instruction code to get the ledger’s internal public key without prompt\n private readonly INS_PROMPT_PUBLIC_KEY = 0x03; // Instruction code to get the ledger’s internal public key with prompt\n private readonly INS_SIGN = 0x04; // Sign a message with the ledger’s key\n private readonly FIRST_MESSAGE_SEQUENCE = 0x00;\n private readonly LAST_MESSAGE_SEQUENCE = 0x81;\n private readonly OTHER_MESSAGE_SEQUENCE = 0x01;\n\n private _publicKey?: string;\n private _publicKeyHash?: string;\n constructor(\n private transport: LedgerTransport,\n private path: string = \"44'/1729'/0'/0'\",\n private prompt: boolean = true,\n private derivationType: DerivationType = DerivationType.ED25519\n ) {\n this.transport.setScrambleKey('XTZ');\n if (!path.startsWith(`44'/1729'`)) {\n throw new InvalidDerivationPathError(\n path,\n `${invalidDetail(ValidationResult.NO_PREFIX_MATCHED)} expecting prefix \"44'/1729'\".`\n );\n }\n if (!Object.values(DerivationType).includes(derivationType)) {\n throw new InvalidDerivationTypeError(derivationType.toString());\n }\n }\n\n async publicKeyHash(): Promise<string> {\n if (!this._publicKeyHash) {\n await this.publicKey();\n }\n if (this._publicKeyHash) {\n return this._publicKeyHash;\n }\n throw new PublicKeyHashRetrievalError();\n }\n\n async publicKey(): Promise<string> {\n if (this._publicKey) {\n return this._publicKey;\n }\n const responseLedger = await this.getLedgerPublicKey();\n const publicKeyLength = responseLedger[0];\n const rawPublicKey = responseLedger.slice(1, 1 + publicKeyLength);\n const compressedPublicKey = compressPublicKey(rawPublicKey, this.derivationType);\n\n const prefixes = this.getPrefixes();\n const publicKey = b58cencode(compressedPublicKey, prefixes.prefPk);\n const publicKeyHash = b58cencode(hash(compressedPublicKey, 20), prefixes.prefPkh);\n\n this._publicKey = publicKey;\n this._publicKeyHash = publicKeyHash;\n return publicKey;\n }\n\n private async getLedgerPublicKey(): Promise<Buffer> {\n try {\n let ins = this.INS_PROMPT_PUBLIC_KEY;\n if (this.prompt === false) {\n ins = this.INS_GET_PUBLIC_KEY;\n }\n const responseLedger = await this.transport.send(\n this.CLA,\n ins,\n this.FIRST_MESSAGE_SEQUENCE,\n this.derivationType,\n transformPathToBuffer(this.path)\n );\n return responseLedger;\n } catch (error) {\n throw new PublicKeyRetrievalError(error);\n }\n }\n\n async secretKey(): Promise<string> {\n throw new ProhibitedActionError('Secret key cannot be exposed');\n }\n\n async sign(bytes: string, watermark?: Uint8Array) {\n const watermarkedBytes = appendWatermark(bytes, watermark);\n const watermarkedBytes2buff = Buffer.from(watermarkedBytes, 'hex');\n let messageToSend = [];\n messageToSend.push(transformPathToBuffer(this.path));\n messageToSend = chunkOperation(messageToSend, watermarkedBytes2buff);\n const ledgerResponse = await this.signWithLedger(messageToSend);\n let signature;\n if (\n this.derivationType === DerivationType.ED25519 ||\n this.derivationType === DerivationType.BIP32_ED25519\n ) {\n signature = ledgerResponse.slice(0, ledgerResponse.length - 2).toString('hex');\n } else {\n if (!validateResponse(ledgerResponse)) {\n throw new InvalidLedgerResponseError(\n 'Invalid signature return by ledger unable to parse the response'\n );\n }\n const idxLengthRVal = 3; // Third element of response is length of r value\n const rValue = extractValue(idxLengthRVal, ledgerResponse);\n const idxLengthSVal = rValue.idxValueStart + rValue.length + 1;\n const sValue = extractValue(idxLengthSVal, ledgerResponse);\n const signatureBuffer = Buffer.concat([rValue.buffer, sValue.buffer]);\n signature = signatureBuffer.toString('hex');\n }\n\n return {\n bytes,\n sig: b58cencode(signature, prefix[Prefix.SIG]),\n prefixSig: b58cencode(signature, this.getPrefixes().prefSig),\n sbytes: bytes + signature,\n };\n }\n\n private async signWithLedger(message: Buffer[]): Promise<Buffer> {\n // first element of the message represents the path\n let ledgerResponse = await this.transport.send(\n this.CLA,\n this.INS_SIGN,\n this.FIRST_MESSAGE_SEQUENCE,\n this.derivationType,\n message[0]\n );\n for (let i = 1; i < message.length; i++) {\n const p1 =\n i === message.length - 1 ? this.LAST_MESSAGE_SEQUENCE : this.OTHER_MESSAGE_SEQUENCE;\n ledgerResponse = await this.transport.send(\n this.CLA,\n this.INS_SIGN,\n p1,\n this.derivationType,\n message[i]\n );\n }\n return ledgerResponse;\n }\n\n private getPrefixes() {\n if (\n this.derivationType === DerivationType.ED25519 ||\n this.derivationType === DerivationType.BIP32_ED25519\n ) {\n return {\n prefPk: prefix[Prefix.EDPK],\n prefPkh: prefix[Prefix.TZ1],\n prefSig: prefix[Prefix.EDSIG],\n };\n } else if (this.derivationType === DerivationType.SECP256K1) {\n return {\n prefPk: prefix[Prefix.SPPK],\n prefPkh: prefix[Prefix.TZ2],\n prefSig: prefix[Prefix.SPSIG],\n };\n } else {\n return {\n prefPk: prefix[Prefix.P2PK],\n prefPkh: prefix[Prefix.TZ3],\n prefSig: prefix[Prefix.P2SIG],\n };\n }\n }\n}\n"],"names":["TaquitoError","ParameterValidationError","DerivationType","InvalidDerivationPathError","invalidDetail","ValidationResult","b58cencode","hash","ProhibitedActionError","prefix","Prefix"],"mappings":"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"}
|
package/dist/types/errors.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ParameterValidationError, TaquitoError } from '@taquito/core';
|
|
2
2
|
/**
|
|
3
3
|
* @category Error
|
|
4
|
-
* @description Error indicates an invalid or unparseable ledger response
|
|
4
|
+
* @description Error that indicates an invalid or unparseable ledger response
|
|
5
5
|
*/
|
|
6
6
|
export declare class InvalidLedgerResponseError extends TaquitoError {
|
|
7
7
|
readonly message: string;
|
|
@@ -9,7 +9,7 @@ export declare class InvalidLedgerResponseError extends TaquitoError {
|
|
|
9
9
|
}
|
|
10
10
|
/**
|
|
11
11
|
* @category Error
|
|
12
|
-
* @description Error indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
12
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
13
13
|
*/
|
|
14
14
|
export declare class PublicKeyRetrievalError extends TaquitoError {
|
|
15
15
|
readonly cause: any;
|
|
@@ -17,14 +17,14 @@ export declare class PublicKeyRetrievalError extends TaquitoError {
|
|
|
17
17
|
}
|
|
18
18
|
/**
|
|
19
19
|
* @category Error
|
|
20
|
-
* @description Error indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
20
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
21
21
|
*/
|
|
22
22
|
export declare class PublicKeyHashRetrievalError extends TaquitoError {
|
|
23
23
|
constructor();
|
|
24
24
|
}
|
|
25
25
|
/**
|
|
26
26
|
* @category Error
|
|
27
|
-
* @description Error indicates an invalid derivation type being passed or used
|
|
27
|
+
* @description Error that indicates an invalid derivation type being passed or used
|
|
28
28
|
*/
|
|
29
29
|
export declare class InvalidDerivationTypeError extends ParameterValidationError {
|
|
30
30
|
readonly derivationType: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taquito/ledger-signer",
|
|
3
|
-
"version": "17.
|
|
3
|
+
"version": "17.2.0-beta-RC.0",
|
|
4
4
|
"description": "Ledger signer provider",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"tezos",
|
|
@@ -60,8 +60,8 @@
|
|
|
60
60
|
"dependencies": {
|
|
61
61
|
"@ledgerhq/hw-transport": "^6.27.3",
|
|
62
62
|
"@stablelib/blake2b": "^1.0.1",
|
|
63
|
-
"@taquito/taquito": "^17.
|
|
64
|
-
"@taquito/utils": "^17.
|
|
63
|
+
"@taquito/taquito": "^17.2.0-beta-RC.0",
|
|
64
|
+
"@taquito/utils": "^17.2.0-beta-RC.0",
|
|
65
65
|
"buffer": "^6.0.3"
|
|
66
66
|
},
|
|
67
67
|
"devDependencies": {
|
|
@@ -93,5 +93,5 @@
|
|
|
93
93
|
"ts-toolbelt": "^9.6.0",
|
|
94
94
|
"typescript": "~4.1.5"
|
|
95
95
|
},
|
|
96
|
-
"gitHead": "
|
|
96
|
+
"gitHead": "14abfbab9dc46c1370a6c2e4483c2585b0f76d88"
|
|
97
97
|
}
|
package/src/errors.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { ParameterValidationError, TaquitoError } from '@taquito/core';
|
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* @category Error
|
|
5
|
-
* @description Error indicates an invalid or unparseable ledger response
|
|
5
|
+
* @description Error that indicates an invalid or unparseable ledger response
|
|
6
6
|
*/
|
|
7
7
|
export class InvalidLedgerResponseError extends TaquitoError {
|
|
8
8
|
constructor(public readonly message: string) {
|
|
@@ -13,7 +13,7 @@ export class InvalidLedgerResponseError extends TaquitoError {
|
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* @category Error
|
|
16
|
-
* @description Error indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
16
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key from Ledger signer
|
|
17
17
|
*/
|
|
18
18
|
export class PublicKeyRetrievalError extends TaquitoError {
|
|
19
19
|
constructor(public readonly cause: any) {
|
|
@@ -25,7 +25,7 @@ export class PublicKeyRetrievalError extends TaquitoError {
|
|
|
25
25
|
|
|
26
26
|
/**
|
|
27
27
|
* @category Error
|
|
28
|
-
* @description Error indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
28
|
+
* @description Error that indicates a failure when trying to retrieve a Public Key Hash from Ledger signer
|
|
29
29
|
*/
|
|
30
30
|
export class PublicKeyHashRetrievalError extends TaquitoError {
|
|
31
31
|
constructor() {
|
|
@@ -37,7 +37,7 @@ export class PublicKeyHashRetrievalError extends TaquitoError {
|
|
|
37
37
|
|
|
38
38
|
/**
|
|
39
39
|
* @category Error
|
|
40
|
-
* @description Error indicates an invalid derivation type being passed or used
|
|
40
|
+
* @description Error that indicates an invalid derivation type being passed or used
|
|
41
41
|
*/
|
|
42
42
|
export class InvalidDerivationTypeError extends ParameterValidationError {
|
|
43
43
|
constructor(public readonly derivationType: string) {
|
package/src/version.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
|
|
1
2
|
// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!
|
|
2
3
|
export const VERSION = {
|
|
3
|
-
|
|
4
|
-
|
|
4
|
+
"commitHash": "96c9d60e1d08c7ac01d81e4d23ba5038c7779c92",
|
|
5
|
+
"version": "17.2.0-beta-RC.0"
|
|
5
6
|
};
|