mirror of
https://github.com/nostr-protocol/nips.git
synced 2024-12-23 00:45:53 -05:00
fixes pseudo code
This commit is contained in:
parent
e71e3907a7
commit
92d8bccc3e
6
76.md
6
76.md
|
@ -34,7 +34,7 @@ Probabilistic permissions use bloom filters that include a set of pubkeys. They
|
||||||
Bloom filters MUST use `SHA-256` functions of the key + iterating index as the psedocode below:
|
Bloom filters MUST use `SHA-256` functions of the key + iterating index as the psedocode below:
|
||||||
|
|
||||||
```js
|
```js
|
||||||
class BloomFilter(size: Int, n: Int, buffer: ByteArray) {
|
class BloomFilter(size: Int, rounds: Int, buffer: ByteArray) {
|
||||||
val bits = BitArray(buffer)
|
val bits = BitArray(buffer)
|
||||||
|
|
||||||
fun bitIndex(value: ByteArray, index: Byte) {
|
fun bitIndex(value: ByteArray, index: Byte) {
|
||||||
|
@ -44,7 +44,7 @@ class BloomFilter(size: Int, n: Int, buffer: ByteArray) {
|
||||||
fun add(pubkey: HexKey) {
|
fun add(pubkey: HexKey) {
|
||||||
val value = pubkey.hexToByteArray()
|
val value = pubkey.hexToByteArray()
|
||||||
|
|
||||||
for (index in 0..n) {
|
for (index in 0 until rounds) {
|
||||||
bits[bitIndex(value, index)] = true
|
bits[bitIndex(value, index)] = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -52,7 +52,7 @@ class BloomFilter(size: Int, n: Int, buffer: ByteArray) {
|
||||||
fun mightContains(pubkey: HexKey): Boolean {
|
fun mightContains(pubkey: HexKey): Boolean {
|
||||||
val value = pubkey.hexToByteArray()
|
val value = pubkey.hexToByteArray()
|
||||||
|
|
||||||
for (index in 0..n) {
|
for (index in 0 until rounds) {
|
||||||
if (!bits[bitIndex(value, index)]) {
|
if (!bits[bitIndex(value, index)]) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user