(random: RandomFn)
| 482 | * @private |
| 483 | */ |
| 484 | export function buildPermutationTable(random: RandomFn): Uint8Array { |
| 485 | const tableSize = 512; |
| 486 | const p = new Uint8Array(tableSize); |
| 487 | for (let i = 0; i < tableSize / 2; i++) { |
| 488 | p[i] = i; |
| 489 | } |
| 490 | for (let i = 0; i < tableSize / 2 - 1; i++) { |
| 491 | const r = i + ~~(random() * (256 - i)); |
| 492 | const aux = p[i]; |
| 493 | p[i] = p[r]; |
| 494 | p[r] = aux; |
| 495 | } |
| 496 | for (let i = 256; i < tableSize; i++) { |
| 497 | p[i] = p[i - 256]; |
| 498 | } |
| 499 | return p; |
| 500 | } |
no outgoing calls
no test coverage detected