Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* feat: modify the struct of identity remove api * bug: fix tx_type conversion bug * chore: pr review question optimization * feat: token-core merge review problem optimization * chore: clear build warnings * chore: the source field is restored from enum to string * chore: clean warning info * feat: common algorithm sample * feat: add aes-128-ctr encrypt/decrypt no padding sample * feat: add cosmos eos chains * feat: add eth keystore v3 import and export feature * feat: add cosmos eos chains (#42) Co-authored-by: sun <tyrone98@users.noreply.github.com> * Feature/support btc (#43) * pin to Rust version 1.71.1 * rename WifDisplay to WIFDisplay * add bitcoin segwit address * add bitcoin tests * fix!: wrong change address * refactor bitcoin to support P2WPKH, P2SH-P2WPKH, P2PKH * fix tests * refactor: rename tcx-btc-fork to tcx-btc-kin * refactor: simplify BtcForkNetwork and rename it to BtcKinNetwork * add implemention for Native SegWit and Taproot * derive the address based on the input's address type when signing * add p2tr and p2wpkh tests * use sig.verify for schnorr signature * refactor: define const BTC_KIN_NETWORKS --------- Co-authored-by: tyrone <2125081@qq.com> * feat: migration mnemonic keystore * refactor: Address.from_public_key returning Result<Self,Err> * fix keystore tests * refactor: generate chain scaffolding code using use_chain macro in tcx * migrate eos,bitcoin,ethereum,cosmos wallet to HdKeystore * add merge function for Keystore * refactor: rename crypto.generate_derived_key to crypto.derive_key * refactor: reduce kdf executed times * keep the derived key unchanged during the migration * add migration for identity wallets * rename Fake... in macros to Unsupported... * add encryption and decryption for IPFS files * merge tcx-bch into tcx-btc-kin * remove tcx-bch * remove tcx-bch * fix: ethereum address * refactor the definition of sign_message into the packages of each chain * discard the imToken v3 format and merge it into the tcx_chain.Keystore * fix ethereum tests in tcx * fix the encryption and decryption of ipfs * add sign_authentication_message * bump rust edition to 2021 * fix tcx-chain tests * rename tcx-wallet to tcx-identity * fix build fail on tcx_wallet * chore: update version * feat: add backup keystore dir * merge ec_sign and personal_sign into sign_message * separate the identity operations from the handler.rs file to identity.rs * remove the isHex flag and consider strings starting with 0x as hexadecimal * refactor: store encoded public key instead of account name in eos * refactor: use tcx-common::keccak256 instead of sha3::keccak * dk keystore migrate feature (#47) * feat: add calc external address * feat: add keystore dk migration * fix: ios and android keystore inconsistency * feat: integrate ios dk keystore migration * feat: implement the functions about identity * chore: rename tcx_chain to tcx_keystore * optimize: fixed all compile warnings for token-core * format codes * Add get_private_key_by_derivation_path tests * Change Snake Case to Camel Case in api.proto * Remove active accounts in keystore and refactor tcx-eth, tcx-eos... * fix sign_transaction * feat: add identity to private keystore * feat: fix api, cosmos, eth2 build error * Fixed tcx-eth, keystore unit tests * Fixed eos unit tests * fix: fix filecoin and tron unit tests * feat: add the get_public_key and sign_hases api * Fix bitcoin unit tests * Fixed btc-kin unit tests * Fixed tcx-eth ec_sign unit tests * feat: add bls_sign method implement * refactor: ChainType, Curve, DerivationPath, Network etc (#50) * Revert "refactor: ChainType, Curve, DerivationPath, Network etc (#50)" This reverts commit 3162cd4. * fix: api and ckb build error * fix: fix calc external address * refactor: refactor the api crate * refactor: remove the encoder trait * feat: remove eth2 crate、 sign_hashes interface supports BLS algorithm * refactor: Standardize all function names in the format of verb + noun * feat: add the exists_* api * fix: fix failed case cause by init dir changed * refactor: clean warning info * refactor: clean unit test build warning * Upgrade keystore to enable it to generate identity * add keystore upgrade unit tests * Add the upgrade of the existing keystore in the migrate_keystore api * Replace KEYSTORE with KEYSTORE_V3 in imTokenMeta * feat: add the exists_* api * refactor: clean warning info * Method to eliminate duplicate implementiations and unify the processing of hex in tcx_common * fix: fix unit test error * feat: add the import json * Remove unused enable_account function in every chain * fix: Hex utils build error * Fixed tcx-primitive unit tests * fix: crypto miss sha256d * feat: change derive sub accounts to accept raw xpub * Removed unused CacheDeriveKey in tcx-crypto * Recover CacheDerivedKey * Fixed tcx-ckb unit tests * feat: derive multi sub accounts * fix: fix test_create_identity_from_private_key * ut: add derive_sub_accounts test * feat: add mnemonic_to_public api * fix: fix migration unit test error * typo: remove some todo * test: add atom unit test * refactor: remove some comments * feat: add bitcoincash derive * To increase test coverage, add more tests * test: add ckb unit test * test: add tcx-constants test case * test: add tcx-eos test case * test: add tcx-filecoin test case * feat: add import private key and key hash * test: add tcx-primitive test case * fix: fix import private key * fix: fix private_key* and json* api * feat: revert ETH2 bls_to_execution_change sign feature * Rename key_hash to fingerprint * Add unit tests in tcx-keystore for test coverage * Add unit tests in tcx-crypto for 100% test coverage * Add unit tests in tcx-btc-kin for test coverage * Add unit tests in tcx-keystore * Add more unit tests in tcx-migrate to achieve 100% coverage * Add more unit tests in tcx-constants to achieve 100% coverage * feat: add more derive test * fix: hd cannot export json * Fixed ckb sign_transaction * unittest: fix most tcx test * Add more unit tests in tcx-migration * Remove the relevant code of ChainFactory * feat: return fingerprint * fix: cannot export polkadot json * data: add ios test keystore * data: add btc, bch, ltc keystore * Add android migrate unit tests * test: add test case * refactor: rename the curve name * Add integration tests for migration * refactor: remove unused identity and zksync * chore: unify dependencies library version numbers * Fixed unit tests of eos keystore migration * chore: add test case * Fixed migrate unit tests * Add serial_test to tcx for sequential execution of unit tests * refactor: remove some todo * Use derived key in tcx-migrate unit tests for reducing test times * Use derived key for tests performance * refactor: replace test mnemonic str to TEST_MNEMONIC * fix: cargo merge error * chore: fixed dependencies version number * chore: recover from_str_name function * format: ios online test keystore * chore: upgrade num_bigint_chainsafe to 0.1.4 * refactor: optimization of clippy code check issues * chore: remove iop-keyvault library reference * chore: remove rust-crypto library reference * Use the enumerated values of segwit VERSION_0, VERSION_1 * feat: delete remove_wallets function * optimization of clippy code check issues * chore: clippy check optimization、upgrade forest_message and forest_crypto version * feat: add public key encoder * chore: optimization cargo clippy check problem * fix: ikc build error * refactor: replace iop-keyvault with ed25519-dalek-bip32 * feat: add curve field to keystore * Fixed unit tests in tcx-keystore * Fixed unit tests in tcx-migration * Add sign unit tests in tcx-eth and tcx-tron * Encode extend public key with base58check * feat: add scan_keystores api * test: add tcx-primitive test case * fix: source fingerprint camelcase error * feat: flush migrated keystore to walletsv2 * unittest: add migration source and curve test * add a 'derived_key' parameter to all operations that require authorization verification * add a 'derived_key' to derived_accounts api * add derivedKey parameters to export_mnemonic * add derivedKey parameter to tcx-eth2 * chore: add more hash tests * chore:use aes to replace aes-ctr * chore: remove useless and unsafe dependencies * chore: remove aes-soft and block-modes dependencies * chore: remove ring dependencies * chore: remove block-modes dependencies * backup & scan_keystores API (#60) * feat: add enc_origin filed * feat: add scan_legacy_keystores * feat: add backup api * feat: add mismatch network check when import private * feat: add scan_keystores * cache the master private to achieve higher performance * add benchmark tests to tcx and tcx-keystore * test: add api test case get_extended_public_keys、sign_authentication_message、 ipfs_encrypt_and_decrypt、eth_recover_address * test: fix error test case * fix: revert substrate export error * feat: imKey support subaddress feature[R2D2-10114] (#58) * feat: imKey support subaddress feature * chore:remove useless test code * chore: optimization path length check * chore: imKey subaddress review modify * chore: remove unused import and clean warning * fix: remove 01 tx_type in eth tx * fix: merge error * fix: fix review issue by labs * remove the dependency on ethers * test: add trust wallet cross test * test: add cross test * test: add bip32/44/49/84 spec test * bump tiny-bip39 to 1.0.0 and use anyhow instead of failure * feat: update some error msg key * fix: fix binding invalid_key_iv_length error * chore: ikc upgrade tiny-bip39 to 1.0.0 and use anyhow instead of failure * test: add polkadot.js corss test * fix: imKey DeriveAccountsParam tag * fix: fix nervos and eth derive account error * fix: substrate path regex is not right * feat: allow using empty string as substrate derivation path * use fixed xpub version * test: fix tron test case error * fixed broken unit tests * add eth ec recover * Remove incorrect comment in the tcx-btc-kin test * refactor TypePrivateKey signature * fix: fix review issue by labs * feat: sign eos using rfc6979+nonce (#62) * fix: btc address todos * feat: ikc add derive_sub_accounts api[R2D2-10266] (#61) * feat: ikc add derive_sub_account feat * test: add exception test case and code optimization * chore: remove envdot lib 、unused impore and fix clippy error * fix: modify polkadot and kusama path in coin_info * fix: fix polkadot and kusama curve type in coin_info * feat: add pull request template * feat: add reimport unittest * fix: delete unused testcase * fix: some missing issue review by labs * fix: fix all warnings * feat: add sr25519 derive child test * fix: cannot backup mnemonic * Add derived key param to more api (#63) * feat: add biometric to more api * feat: remove password required in backup * fix: remove dbg! * feat: remove 0x form tron, eth private key * feat: add eth_batch_personal_sign api (#64) * Keep duplicate keystore in memory (#65) * feat: keep old fileid and keystore in memory * feat: split test cases * chore: format code * feat: retur all k1 chain_types (#67) * delete all associated keystore when delete_keystore is called (#69) Co-authored-by: tyrone <2125081@qq.com> * feat: ikc add get_extended_public_key api [R2D2-10567] (#70) * feat: add ikc get_extended_public_key api * fix: derive_sub_accounts returns data and adds path field * fix: modify GetExtendedPublicKeysParam proto message tag number * chore: modify pr reivew problem * feat: add get_public_keys api and code optimization 1. add get_public_keys api 2. remove btc_get_xpub api 3. get_extended_public_key interface removes ed25519 curve support * feat: migrate add network field (#71) * feat: MigrateKeystoreParam adds network field * test: add migrate mainnet test case * fix: fix eth_batch_personal_sign signature verification failure * fix: fix batch_personal_sign test case failed * Export v3 keystore using lower address (#72) * feat: export with lower address * testcase: change import v3 keystore json with loweraddress * fix: sign eth empty address (#73) * fix: using legacy enc key (#74) * fix: cannot migrate old private key eos keystore (#75) * fix: cannot migrate old private key ios eos keystore (#76) * fix: return error ks id when import multi times a same mnemonic (#77) * fix: eth_sign is signing arbitrary data (#78) * fix:fix imKey standard edition btc import error * chore: modify the createat type of LegacyKeystoreResult to string * chore: modify btc、ltc、bch transaction utxo path to full path for ikc (#79) * chore: modify btc transaction utxo path to full path * chore: modify bch and ltc transaction utxo to full path * fix: remove old ks in memory (#80) * fix: fix identity keystore delete bug[R2D2-10888] (#81) * fix: fix identity keystore deletion bug after migration * test: otpimization test case * revert: eth_sign sign hashed message (#82) * Revert "fix: eth_sign is signing arbitrary data (#78)" This reverts commit 938b4ab. * fix: eth_sign cannot sign string begin with 0x * fix: fix add eth error after upgrade (#84) * feat: mark identity wallet ids (#83) * feat: mark identity wallet ids * feat: add read_keystore_menmonic_path api * build: upgrade CI gradle-build-action version v2 to v3 * chore: add checksum to the eth address returned by the scan_legacy_keystores interface (#86) * fix: metadata missing password_hint error (#88) * fix: metadata missing password_hint error * feat: make the password_hint is option * fix: fix ikc cosmos signature error (#89) * fix: fix imKey standard version call get_public_keys interface error (#90) --------- Co-authored-by: xiaoguang <xiaoguang101010@163.com> Co-authored-by: sun <tyrone98@users.noreply.github.com> Co-authored-by: tyrone <2125081@qq.com> Co-authored-by: changwu <changwu.me@gmail.com> Co-authored-by: xiaoguang1010 <40228114+xiaoguang1010@users.noreply.github.com>
- Loading branch information