Remove base64 encoding of store secrets #33
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It turns out that the mystery incompatibility in handling macaroons between Node.js and OCaml from #30, was that the macaroons.js can accept secrets as either utf-8 strings or Buffers, with Buffers being more efficient. The arbiter was minting macaroons with Buffers, which results in distinct signatures than with strings, even if it's the same bytes as the lib's code shows.
Since ocaml-macaroons deals with strings, the past changes switched to string secrets. This inadvertently broke store-json. @Toshbrown remedied this by moving that also to strings in me-box-archive/store-json#6. And since we're modifying that, we took the opportunity to close #32 too. With that change, all is well in the world, and the new ocaml store also doesn't need to base64 decode anything.