From 98a15a98ef250d15338e6341729eadf5ebcc26cd Mon Sep 17 00:00:00 2001 From: CounterFire2023 <136581895+CounterFire2023@users.noreply.github.com> Date: Wed, 13 Sep 2023 16:51:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B8=80=E4=BA=9B=E6=96=B9?= =?UTF-8?q?=E6=B3=95=E4=B9=8Bwasm?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 3 +++ scripts/wasm_build.sh | 4 ++-- src/lib.rs | 21 +++++++++++++++++++-- 3 files changed, 24 insertions(+), 4 deletions(-) create mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..eb7750c --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "cmake.configureOnOpen": false +} \ No newline at end of file diff --git a/scripts/wasm_build.sh b/scripts/wasm_build.sh index 5959f2b..3971768 100755 --- a/scripts/wasm_build.sh +++ b/scripts/wasm_build.sh @@ -1,2 +1,2 @@ -# AR=/opt/homebrew/opt/llvm/bin/llvm-ar CC=/opt/homebrew/opt/llvm/bin/clang wasm-pack build --target web --release -AR=/opt/homebrew/opt/llvm/bin/llvm-ar CC=/opt/homebrew/opt/llvm/bin/clang wasm-pack build --target nodejs --release \ No newline at end of file +AR=/opt/homebrew/opt/llvm/bin/llvm-ar CC=/opt/homebrew/opt/llvm/bin/clang wasm-pack build --target web --release +# AR=/opt/homebrew/opt/llvm/bin/llvm-ar CC=/opt/homebrew/opt/llvm/bin/clang wasm-pack build --target nodejs --release \ No newline at end of file diff --git a/src/lib.rs b/src/lib.rs index 03765d4..95c73c9 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -103,15 +103,26 @@ pub fn sign_for_tran( result } +#[wasm_bindgen] +pub fn wgenerate_client_key(password: String, openid: String, salt: String) -> String { + wallet_impl::generate_client_key(&password, &openid, &salt) +} + +#[wasm_bindgen] +pub fn keccak256_hash(content: String) -> String { + let msg_hex = utils::crypto_utils::keccak256_hash(&content); + msg_hex +} + #[wasm_bindgen] pub fn wget_address(msg_key: String, master_key: String, second_key: String) -> String { - console_log!("wget_address: {}, {}!", msg_key, master_key); + // console_log!("wget_address: {}, {}!", msg_key, master_key); let rwallet = Wallet { msg_key, master_key, second_key, }; - console_log!("wallet: {:?}", rwallet); + // console_log!("wallet: {:?}", rwallet); let address = rwallet.get_address(); let address_str = format!("{:?}", address); address_str @@ -206,6 +217,12 @@ pub fn password_hash(pass: String, salt: String) -> String { hash_password(&pass, &salt) } +#[wasm_bindgen] +pub fn hash_pass_svr(content: String) -> String { + let msg_hex = utils::crypto_utils::hash_pass_svr(&content); + msg_hex +} + #[wasm_bindgen] pub fn password_verify(pass: String, pass_hash: String) -> bool { verify_password(&pass, &pass_hash)