Skip to content

Commit 65ce63f

Browse files
committed
refactor: removed Result<> from hash_to_field_le/be and all related tests, examples and docs
1 parent 6821cac commit 65ce63f

File tree

18 files changed

+133
-224
lines changed

18 files changed

+133
-224
lines changed

rln-cli/src/examples/multi_message_id.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ impl RLNSystem {
195195
};
196196

197197
let (path_elements, identity_path_index) = self.rln.get_merkle_proof(user_index)?;
198-
let x = hash_to_field_le(signal.as_bytes())?;
198+
let x = hash_to_field_le(signal.as_bytes());
199199

200200
let witness = RLNWitnessInput::new(
201201
identity.identity_secret.clone(),
@@ -291,8 +291,8 @@ fn main() -> Result<()> {
291291
println!("Initializing RLN multi-message-id instance...");
292292
print!("\x1B[2J\x1B[1;1H");
293293
let mut rln_system = RLNSystem::new()?;
294-
let rln_epoch = hash_to_field_le(b"epoch")?;
295-
let rln_identifier = hash_to_field_le(b"rln-identifier")?;
294+
let rln_epoch = hash_to_field_le(b"epoch");
295+
let rln_identifier = hash_to_field_le(b"rln-identifier");
296296
let external_nullifier = poseidon_hash(&[rln_epoch, rln_identifier]).unwrap();
297297
println!("RLN Multi-Message-ID Example:");
298298
println!("Message Limit: {MESSAGE_LIMIT}");

rln-cli/src/examples/partial.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ impl RLNSystem {
242242
None => return Err(format!("User {user_index} not found").into()),
243243
};
244244

245-
let x = hash_to_field_le(signal.as_bytes())?;
245+
let x = hash_to_field_le(signal.as_bytes());
246246
let current_root = self.rln.get_root();
247247

248248
let (witness, partial_proof) = match self.partial_proofs.get(&user_index) {
@@ -366,8 +366,8 @@ impl RLNSystem {
366366
fn main() -> Result<()> {
367367
println!("Initializing RLN instance...");
368368
print!("\x1B[2J\x1B[1;1H");
369-
let rln_epoch = hash_to_field_le(b"epoch")?;
370-
let rln_identifier = hash_to_field_le(b"rln-identifier")?;
369+
let rln_epoch = hash_to_field_le(b"epoch");
370+
let rln_identifier = hash_to_field_le(b"rln-identifier");
371371
let external_nullifier = poseidon_hash(&[rln_epoch, rln_identifier]).unwrap();
372372
let mut rln_system = RLNSystem::new(external_nullifier)?;
373373
println!("RLN Partial Proof Example:");

rln-cli/src/examples/relay.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ impl RLNSystem {
147147
};
148148

149149
let (path_elements, identity_path_index) = self.rln.get_merkle_proof(user_index)?;
150-
let x = hash_to_field_le(signal.as_bytes())?;
150+
let x = hash_to_field_le(signal.as_bytes());
151151

152152
let witness = RLNWitnessInput::new(
153153
identity.identity_secret.clone(),
@@ -230,8 +230,8 @@ fn main() -> Result<()> {
230230
println!("Initializing RLN instance...");
231231
print!("\x1B[2J\x1B[1;1H");
232232
let mut rln_system = RLNSystem::new()?;
233-
let rln_epoch = hash_to_field_le(b"epoch")?;
234-
let rln_identifier = hash_to_field_le(b"rln-identifier")?;
233+
let rln_epoch = hash_to_field_le(b"epoch");
234+
let rln_identifier = hash_to_field_le(b"rln-identifier");
235235
let external_nullifier = poseidon_hash(&[rln_epoch, rln_identifier]).unwrap();
236236
println!("RLN Relay Example:");
237237
println!("Message Limit: {MESSAGE_LIMIT}");

rln-cli/src/examples/stateless.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ impl RLNSystem {
126126
};
127127

128128
let merkle_proof = self.tree.proof(user_index)?;
129-
let x = hash_to_field_le(signal.as_bytes())?;
129+
let x = hash_to_field_le(signal.as_bytes());
130130

131131
let witness = RLNWitnessInput::new(
132132
identity.identity_secret.clone(),
@@ -219,8 +219,8 @@ fn main() -> Result<()> {
219219
println!("Initializing RLN instance...");
220220
print!("\x1B[2J\x1B[1;1H");
221221
let mut rln_system = RLNSystem::new()?;
222-
let rln_epoch = hash_to_field_le(b"epoch")?;
223-
let rln_identifier = hash_to_field_le(b"rln-identifier")?;
222+
let rln_epoch = hash_to_field_le(b"epoch");
223+
let rln_identifier = hash_to_field_le(b"rln-identifier");
224224
let external_nullifier = poseidon_hash(&[rln_epoch, rln_identifier]).unwrap();
225225
println!("RLN Stateless Example:");
226226
println!("Message Limit: {MESSAGE_LIMIT}");

rln-wasm/src/wasm_utils.rs

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -200,17 +200,13 @@ pub struct Hasher;
200200
#[wasm_bindgen]
201201
impl Hasher {
202202
#[wasm_bindgen(js_name = hashToFieldLE)]
203-
pub fn hash_to_field_le(input: &Uint8Array) -> Result<WasmFr, String> {
204-
hash_to_field_le(&input.to_vec())
205-
.map(WasmFr)
206-
.map_err(|err| err.to_string())
203+
pub fn hash_to_field_le(input: &Uint8Array) -> WasmFr {
204+
WasmFr(hash_to_field_le(&input.to_vec()))
207205
}
208206

209207
#[wasm_bindgen(js_name = hashToFieldBE)]
210-
pub fn hash_to_field_be(input: &Uint8Array) -> Result<WasmFr, String> {
211-
hash_to_field_be(&input.to_vec())
212-
.map(WasmFr)
213-
.map_err(|err| err.to_string())
208+
pub fn hash_to_field_be(input: &Uint8Array) -> WasmFr {
209+
WasmFr(hash_to_field_be(&input.to_vec()))
214210
}
215211

216212
#[wasm_bindgen(js_name = poseidonHashPair)]

rln-wasm/tests/browser.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -131,9 +131,9 @@ mod test {
131131
let identity_secret = identity_pair.get_secret_hash();
132132
let id_commitment = identity_pair.get_commitment();
133133

134-
let epoch = Hasher::hash_to_field_le(&Uint8Array::from(b"test-epoch" as &[u8])).unwrap();
134+
let epoch = Hasher::hash_to_field_le(&Uint8Array::from(b"test-epoch" as &[u8]));
135135
let rln_identifier =
136-
Hasher::hash_to_field_le(&Uint8Array::from(b"test-rln-identifier" as &[u8])).unwrap();
136+
Hasher::hash_to_field_le(&Uint8Array::from(b"test-rln-identifier" as &[u8]));
137137
let external_nullifier = Hasher::poseidon_hash_pair(&epoch, &rln_identifier).unwrap();
138138

139139
let identity_index = tree.leaves_set();
@@ -147,7 +147,7 @@ mod test {
147147
#[cfg(not(feature = "multi-message-id"))]
148148
let message_id = WasmFr::from_uint(0);
149149
let signal: [u8; 32] = [0; 32];
150-
let x = Hasher::hash_to_field_le(&Uint8Array::from(&signal[..])).unwrap();
150+
let x = Hasher::hash_to_field_le(&Uint8Array::from(&signal[..]));
151151

152152
let merkle_proof: OptimalMerkleProof<PoseidonHash> = tree.proof(identity_index).unwrap();
153153

rln-wasm/tests/node.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,9 @@ mod test {
9090
let identity_secret = identity_pair.get_secret_hash();
9191
let id_commitment = identity_pair.get_commitment();
9292

93-
let epoch = Hasher::hash_to_field_le(&Uint8Array::from(b"test-epoch" as &[u8])).unwrap();
93+
let epoch = Hasher::hash_to_field_le(&Uint8Array::from(b"test-epoch" as &[u8]));
9494
let rln_identifier =
95-
Hasher::hash_to_field_le(&Uint8Array::from(b"test-rln-identifier" as &[u8])).unwrap();
95+
Hasher::hash_to_field_le(&Uint8Array::from(b"test-rln-identifier" as &[u8]));
9696
let external_nullifier = Hasher::poseidon_hash_pair(&epoch, &rln_identifier).unwrap();
9797

9898
let identity_index = tree.leaves_set();
@@ -103,7 +103,7 @@ mod test {
103103

104104
let message_id = WasmFr::from_uint(0);
105105
let signal: [u8; 32] = [0; 32];
106-
let x = Hasher::hash_to_field_le(&Uint8Array::from(&signal[..])).unwrap();
106+
let x = Hasher::hash_to_field_le(&Uint8Array::from(&signal[..]));
107107

108108
let merkle_proof: OptimalMerkleProof<PoseidonHash> = tree.proof(identity_index).unwrap();
109109
let mut path_elements = VecWasmFr::new();
@@ -157,9 +157,9 @@ mod test {
157157
let identity_secret = identity_pair.get_secret_hash();
158158
let id_commitment = identity_pair.get_commitment();
159159

160-
let epoch = Hasher::hash_to_field_le(&Uint8Array::from(b"test-epoch" as &[u8])).unwrap();
160+
let epoch = Hasher::hash_to_field_le(&Uint8Array::from(b"test-epoch" as &[u8]));
161161
let rln_identifier =
162-
Hasher::hash_to_field_le(&Uint8Array::from(b"test-rln-identifier" as &[u8])).unwrap();
162+
Hasher::hash_to_field_le(&Uint8Array::from(b"test-rln-identifier" as &[u8]));
163163
let external_nullifier = Hasher::poseidon_hash_pair(&epoch, &rln_identifier).unwrap();
164164

165165
let identity_index = tree.leaves_set();
@@ -172,7 +172,7 @@ mod test {
172172

173173
let message_id = WasmFr::from_uint(0);
174174
let signal: [u8; 32] = [0; 32];
175-
let x = Hasher::hash_to_field_le(&Uint8Array::from(&signal[..])).unwrap();
175+
let x = Hasher::hash_to_field_le(&Uint8Array::from(&signal[..]));
176176

177177
let merkle_proof: OptimalMerkleProof<PoseidonHash> = tree.proof(identity_index).unwrap();
178178

rln-wasm/tests/utils.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -186,12 +186,12 @@ mod test {
186186
let signal_gen: [u8; 32] = rng.gen();
187187
let signal = Uint8Array::from(&signal_gen[..]);
188188

189-
let wasmfr_le_1 = Hasher::hash_to_field_le(&signal).unwrap();
190-
let fr_le_2 = hash_to_field_le(&signal_gen).unwrap();
189+
let wasmfr_le_1 = Hasher::hash_to_field_le(&signal);
190+
let fr_le_2 = hash_to_field_le(&signal_gen);
191191
assert_eq!(*wasmfr_le_1, fr_le_2);
192192

193-
let wasmfr_be_1 = Hasher::hash_to_field_be(&signal).unwrap();
194-
let fr_be_2 = hash_to_field_be(&signal_gen).unwrap();
193+
let wasmfr_be_1 = Hasher::hash_to_field_be(&signal);
194+
let fr_be_2 = hash_to_field_be(&signal_gen);
195195
assert_eq!(*wasmfr_be_1, fr_be_2);
196196

197197
assert_eq!(*wasmfr_le_1, *wasmfr_be_1);

rln/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,10 +61,10 @@ fn main() {
6161
// 5. Set up external nullifier (epoch + app identifier)
6262
// We generate epoch from a date seed and we ensure is
6363
// mapped to a field element by hashing-to-field its content
64-
let epoch = hash_to_field_le(b"Today at noon, this year").unwrap();
64+
let epoch = hash_to_field_le(b"Today at noon, this year");
6565
// We generate rln_identifier from an application identifier and
6666
// we ensure is mapped to a field element by hashing-to-field its content
67-
let rln_identifier = hash_to_field_le(b"test-rln-identifier").unwrap();
67+
let rln_identifier = hash_to_field_le(b"test-rln-identifier");
6868
// We generate a external nullifier
6969
let external_nullifier = poseidon_hash(&[epoch, rln_identifier]).unwrap();
7070
// We choose a message_id satisfy 0 <= message_id < user_message_limit
@@ -74,7 +74,7 @@ fn main() {
7474
let signal = b"RLN is awesome";
7575

7676
// 7. Compute x from the signal
77-
let x = hash_to_field_le(signal).unwrap();
77+
let x = hash_to_field_le(signal);
7878

7979
// 8. Create witness input for RLN proof generation
8080
let witness = RLNWitnessInput::new(

rln/benches/partial_proof.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ fn get_test_witness() -> RLNWitnessInput {
2424
let merkle_proof = tree.proof(leaf_index).unwrap();
2525

2626
let signal = b"hey hey";
27-
let x = hash_to_field_le(signal).unwrap();
27+
let x = hash_to_field_le(signal);
2828

2929
// We set the remaining values to random ones
30-
let epoch = hash_to_field_le(b"test-epoch").unwrap();
31-
let rln_identifier = hash_to_field_le(b"test-rln-identifier").unwrap();
30+
let epoch = hash_to_field_le(b"test-epoch");
31+
let rln_identifier = hash_to_field_le(b"test-rln-identifier");
3232
let external_nullifier = poseidon_hash(&[epoch, rln_identifier]).unwrap();
3333

3434
let message_id = Fr::from(1);

0 commit comments

Comments
 (0)