@@ -6456,6 +6456,7 @@ var jsSHA = require('jssha/src/sha256');
6456
6456
var Blake256 = require ( './blake256' ) ;
6457
6457
var keccak256 = require ( './sha3' ) [ 'keccak256' ] ;
6458
6458
var Blake2B = require ( './blake2b' ) ;
6459
+ var base58 = require ( './base58' ) ;
6459
6460
6460
6461
function numberToHex ( number ) {
6461
6462
var hex = Math . round ( number ) . toString ( 16 ) ;
@@ -6474,6 +6475,72 @@ function hexToUint8(hexString) {
6474
6475
return new Uint8Array ( arr ) ;
6475
6476
}
6476
6477
6478
+ /* Convert a byte to string */
6479
+ function byte2hexStr ( byte ) {
6480
+ var hexByteMap = "0123456789ABCDEF" ;
6481
+ var str = "" ;
6482
+ str += hexByteMap . charAt ( byte >> 4 ) ;
6483
+ str += hexByteMap . charAt ( byte & 0x0f ) ;
6484
+ return str ;
6485
+ }
6486
+
6487
+ //byteArray格式数据转为16进制的ASCII字符串。
6488
+ function byteArray2hexStr ( byteArray ) {
6489
+ var str = "" ;
6490
+ for ( var i = 0 ; i < ( byteArray . length - 1 ) ; i ++ ) {
6491
+ str += byte2hexStr ( byteArray [ i ] ) ;
6492
+ }
6493
+ str += byte2hexStr ( byteArray [ i ] ) ;
6494
+ return str ;
6495
+ }
6496
+
6497
+ /* Check if a char is hex char */
6498
+ function isHexChar ( c ) {
6499
+ if ( ( c >= 'A' && c <= 'F' ) ||
6500
+ ( c >= 'a' && c <= 'f' ) ||
6501
+ ( c >= '0' && c <= '9' ) ) {
6502
+ return 1 ;
6503
+ }
6504
+ return 0 ;
6505
+ }
6506
+
6507
+ /* Convert a hex char to value */
6508
+ function hexChar2byte ( c ) {
6509
+ var d = 0 ;
6510
+ if ( c >= 'A' && c <= 'F' ) {
6511
+ d = c . charCodeAt ( 0 ) - 'A' . charCodeAt ( 0 ) + 10 ;
6512
+ }
6513
+ else if ( c >= 'a' && c <= 'f' ) {
6514
+ d = c . charCodeAt ( 0 ) - 'a' . charCodeAt ( 0 ) + 10 ;
6515
+ }
6516
+ else if ( c >= '0' && c <= '9' ) {
6517
+ d = c . charCodeAt ( 0 ) - '0' . charCodeAt ( 0 ) ;
6518
+ }
6519
+ return d ;
6520
+ }
6521
+
6522
+ function hexStr2byteArray ( str ) {
6523
+ var byteArray = Array ( ) ;
6524
+ var d = 0 ;
6525
+ var i = 0 ;
6526
+ var j = 0 ;
6527
+ var k = 0 ;
6528
+
6529
+ for ( i = 0 ; i < str . length ; i ++ ) {
6530
+ var c = str . charAt ( i ) ;
6531
+ if ( isHexChar ( c ) ) {
6532
+ d <<= 4 ;
6533
+ d += hexChar2byte ( c ) ;
6534
+ j ++ ;
6535
+ if ( 0 === ( j % 2 ) ) {
6536
+ byteArray [ k ++ ] = d ;
6537
+ d = 0 ;
6538
+ }
6539
+ }
6540
+ }
6541
+ return byteArray ;
6542
+ }
6543
+
6477
6544
module . exports = {
6478
6545
toHex : function ( arrayOfBytes ) {
6479
6546
var hex = '' ;
@@ -6504,7 +6571,10 @@ module.exports = {
6504
6571
} ,
6505
6572
keccak256Checksum : function ( payload ) {
6506
6573
return keccak256 ( payload ) . toString ( ) . substr ( 0 , 8 ) ;
6507
- }
6574
+ } ,
6575
+ base58 : base58 . decode ,
6576
+ byteArray2hexStr : byteArray2hexStr ,
6577
+ hexStr2byteArray : hexStr2byteArray
6508
6578
} ;
6509
6579
6510
6580
} , { "./blake256" :38 , "./blake2b" :39 , "./sha3" :43 , "jssha/src/sha256" :30 } ] , 45 :[ function ( require , module , exports ) {
0 commit comments