vere
vere copied to clipboard
ChaCha jets
See https://github.com/urbit/urbit/pull/6932 and https://github.com/urbit/urcrypt/pull/11
While adding hints in ames to the chacha core to test the jets I ran into an issue (possibly leading zeros; turning off the jet hints works) when decrypting a path. Here's my reproduction:
[ key=0x71d9.8487.408e.3cce.b04c.4ae3.a1b1.c4ce.a735.f8e8.c12c.3d4e.a00f.93b7.a3a4.7e82
sealed=652.078.580.583.155.565.646.659.752.617.586.680.254.982.084.430.047.517.057.294.537.824.250.770.520.721.797.308.354.123.707.327.318.654.085.324.192.428.305.251.288.953.136.879.526.309.005.313
tag=269.817.066.975.889.528.516.941.313.127.535.944.222
cyf=[wid=38 dat=212.750.563.768.270.046.676.238.820.835.841.623.463.818.336.011.104.727.367.926.878.471.398.543.329.446.719.894.343.377]
pat=198.629.089.831.792.245.670.330.659.320.620.482.115.670.229.676.301.490.323.664.083.653.514.959.207.157.527.522.531.914
]
> (cue pat)
/
++ open-path
|= [key=@uxI sealed=@]
^- path
=/ keys (hash 64 key)
=+ ;;([tag=@ cyf=byts] (cue sealed))
=/ pat dat:(decrypt (end 8 keys) tag cyf)
:: ?> (const-cmp tag (keyed-hash (rsh 8 keys) 16 pat)) :: XX FIXME
~& [key=key sealed=sealed tag=tag cyf=cyf pat=pat]
;;(path (cue pat))
(fyi, confirmed that the jet is actually called)
I've pushed jb/chacha
, which fixes up the jet dashboard declarations for %zuse 410 (hoon 137). Using that branch to test urbit/urbit#6978, all tests fail.