diff --git a/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind.cpp b/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind.cpp index 71903bdcc6a..8493b953fc3 100644 --- a/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind.cpp +++ b/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind.cpp @@ -9,7 +9,7 @@ WASM_EXPORT void pedersen__commit(uint8_t const* inputs_buffer, uint8_t* output) { std::vector to_compress; read(inputs_buffer, to_compress); - grumpkin::g1::affine_element pedersen_hash = crypto::pedersen_commitment::commit_native(to_compress); + grumpkin::g1::affine_element pedersen_commitment = crypto::pedersen_commitment::commit_native(to_compress); - serialize::write(output, pedersen_hash); + serialize::write(output, pedersen_commitment); } \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind_new.cpp b/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind_new.cpp index 9988e03904f..bc6f16756d0 100644 --- a/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind_new.cpp +++ b/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind_new.cpp @@ -1,6 +1,6 @@ +#include "c_bind_new.hpp" #include "../pedersen_hash/pedersen.hpp" #include "barretenberg/common/serialize.hpp" -#include "c_bind.hpp" #include "pedersen.hpp" extern "C" { @@ -9,12 +9,12 @@ using namespace barretenberg; WASM_EXPORT void pedersen___init() {} -WASM_EXPORT void pedersen___commit(fr::vec_in_buf inputs_buffer, fr::out_buf output) +WASM_EXPORT void pedersen___commit(fr::vec_in_buf inputs_buffer, affine_element::out_buf output) { std::vector to_compress; read(inputs_buffer, to_compress); - grumpkin::g1::affine_element pedersen_hash = crypto::pedersen_commitment::commit_native(to_compress); + grumpkin::g1::affine_element pedersen_commitment = crypto::pedersen_commitment::commit_native(to_compress); - serialize::write(output, pedersen_hash); + serialize::write(output, pedersen_commitment); } } \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind_new.hpp b/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind_new.hpp index 26b554bab5f..e15b47aafb0 100644 --- a/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind_new.hpp +++ b/barretenberg/cpp/src/barretenberg/crypto/pedersen_commitment/c_bind_new.hpp @@ -1,12 +1,14 @@ #pragma once #include "barretenberg/common/wasm_export.hpp" #include "barretenberg/ecc/curves/bn254/fr.hpp" +#include "barretenberg/ecc/curves/grumpkin/grumpkin.hpp" extern "C" { using namespace barretenberg; +using affine_element = grumpkin::g1::affine_element; WASM_EXPORT void pedersen___init(); -WASM_EXPORT void pedersen___commit(fr::vec_in_buf inputs_buffer, fr::out_buf output); +WASM_EXPORT void pedersen___commit(fr::vec_in_buf inputs_buffer, affine_element::out_buf output); } \ No newline at end of file diff --git a/barretenberg/exports.json b/barretenberg/exports.json index 9f628bdd31a..5ce30b1a852 100644 --- a/barretenberg/exports.json +++ b/barretenberg/exports.json @@ -16,7 +16,7 @@ "outArgs": [ { "name": "output", - "type": "fr::out_buf" + "type": "affine_element::out_buf" } ], "isAsync": false diff --git a/barretenberg/ts/src/barretenberg_api/index.ts b/barretenberg/ts/src/barretenberg_api/index.ts index bafb9840d80..e8750c839e8 100644 --- a/barretenberg/ts/src/barretenberg_api/index.ts +++ b/barretenberg/ts/src/barretenberg_api/index.ts @@ -22,8 +22,8 @@ export class BarretenbergApi { return; } - async pedersenCommit(inputsBuffer: Fr[]): Promise { - const result = await this.binder.callWasmExport('pedersen___commit', [inputsBuffer], [Fr]); + async pedersenCommit(inputsBuffer: Fr[]): Promise { + const result = await this.binder.callWasmExport('pedersen___commit', [inputsBuffer], [Point]); return result[0]; } diff --git a/barretenberg/ts/src/barretenberg_api/pedersen.test.ts b/barretenberg/ts/src/barretenberg_api/pedersen.test.ts index 36e92f9caeb..9713311e8be 100644 --- a/barretenberg/ts/src/barretenberg_api/pedersen.test.ts +++ b/barretenberg/ts/src/barretenberg_api/pedersen.test.ts @@ -1,5 +1,5 @@ import { Barretenberg } from '../barretenberg/index.js'; -import { Fr } from '../types/index.js'; +import { Fr, Point } from '../types/index.js'; describe('pedersen', () => { let api: Barretenberg; @@ -20,6 +20,11 @@ describe('pedersen', () => { it('pedersenCommit', async () => { const result = await api.pedersenCommit([new Fr(4n), new Fr(8n), new Fr(12n)]); - expect(result).toEqual(new Fr(18374309251862457296563484909553154519357910650678202211610516068880120638872n)); + expect(result).toEqual( + new Point( + new Fr(18374309251862457296563484909553154519357910650678202211610516068880120638872n), + new Fr(2572141322478528249692953821523229170092797347760799983831061874108357705739n), + ), + ); }); });