Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document OID identifier #4

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Conversation

xnox
Copy link

@xnox xnox commented Jun 21, 2020

@xnox
Copy link
Author

xnox commented Jun 22, 2020

@oconnor663
Copy link
Member

The same OID can be used for both keyed and unkeyed hashing since in the latter case the key simply has zero length.

That doesn't sound right to me. The key is essentially the first 8 of 16 initial state words. In the unkeyed (default) mode, it's set to a constant. But its length never changes; it's always 8 words / 32 bytes / 256 bits.

@xnox
Copy link
Author

xnox commented Jun 24, 2020

The same OID can be used for both keyed and unkeyed hashing since in the latter case the key simply has zero length.

That doesn't sound right to me. The key is essentially the first 8 of 16 initial state words. In the unkeyed (default) mode, it's set to a constant. But its length never changes; it's always 8 words / 32 bytes / 256 bits.

I am re-reading the modes section. It sounds like unlike BLAKE2, the modes are different and have different flags, and I guess should have different OID for each mode? aka 3.3.8 for HMAC? (where the first 3 is MacAlgs) and something else for key derivation mode.

I think at the very least I should drop that sentance, and ensure that 2.3.8 refers to just the blake3 hash mode.

Developers adapting BLAKE3 to ASN.1-based message formats should use
the Algorithm Identifier blake3 with OID identifier
1.3.6.1.4.1.1722.12.3.8 for all modes and 256-bit default output size.

Copy link
Author

@xnox xnox Jun 25, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@oconnor663 based on discussion here, and the BLAKE3-team/BLAKE3#68 I've updated this patch.

Moved the notice to the Modes section. Specifying that the same OID applies to all modes, for the default output size of 256-bit. Which matches the description of the previous sections which define the default output size.

Or do you want to drop the 8, and then simply use 1.3.6.1.4.1.1722.12.3 as the OID?

@xnox
Copy link
Author

xnox commented May 25, 2023

ping, how come this still has not been merged?

@flokli
Copy link

flokli commented Nov 19, 2023

poke @oconnor663 ;-)

@oconnor663
Copy link
Member

I don't have any experience using OIDs, but the spec doesn't feel like the right place for this. How have other hash functions documented their OIDs?

@baloo
Copy link

baloo commented Nov 20, 2023

Most of them are submitted as RFC (blake2 lives in RFC7693) but this one is under a private OID (http://oid-info.com/get/1.3.6.1.4.1.1722 - Kudelski SA) so it's mostly up to them.

(note: blake2 is also under the same private subtree, so I'm not really sure)

@xnox
Copy link
Author

xnox commented Nov 20, 2023

I don't have any experience using OIDs, but the spec doesn't feel like the right place for this. How have other hash functions documented their OIDs?

random people just assign them. Some are done via RFC, some are done via standards, others do it by them selves. each subtree is controlled by whoever controls a given tree and one can just allocate stuff.

Even things like SHA algorithm OIDs are all over the place. The point is to squat an OID and start using it.

Without stable (allocated, squated) OIDs an algorithms is unlikely to ever make it into multiple library implementations or be used for things that want signing.

@xnox
Copy link
Author

xnox commented Sep 5, 2024

Ping

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants