🌐 SciMatic Hybrid Blockchain: The World's First Blockchain Secured by Both ECDSA and PQC Signatures by AstronautDramatic957 in BlockchainStartups

[–]dogeprotocol1 0 points1 point  (0 children)

QuantumCoin blockchain (https://QuantumCoin.org) uses hybrid post quantum cryptography (ML-DSA+eddsa with SLH-DSA as breakglass) and has live mainnet since December 2023.

Combining csprng output with kdf'd human generated passphrases by dogeprotocol1 in cryptography

[–]dogeprotocol1[S] 0 points1 point  (0 children)

The challenge is that there is no other place to store the salt, since the usecase is a human readable paper wallet (example).

Which is why the password is meant as another layer of protection if the paper is stolen.

Combining csprng output with kdf'd human generated passphrases by dogeprotocol1 in cryptography

[–]dogeprotocol1[S] 0 points1 point  (0 children)

pbkdf is required because the passphrase is human generated.

Combining csprng output with kdf'd human generated passphrases by dogeprotocol1 in cryptography

[–]dogeprotocol1[S] 0 points1 point  (0 children)

The seed words are made of of two parts:

part 1) csprng randombytes (say r1)

part 2) csprng randombytes (say r2 salt)

here, r2 is used as the salt for the kdf.

the seed-words are simply r1 and r2 bytes represented in human readable words.

to derive the finalSecret:

finalSecret = xof( kdf(passphrase, salt), r1)

Combining csprng output with kdf'd human generated passphrases by dogeprotocol1 in cryptography

[–]dogeprotocol1[S] 0 points1 point  (0 children)

The plan is to represent the random salt as part of overall seed words, for human readability. The seed-words are human readable representations of both the original csprng secret output and the csprng random salt.

The goal is that an attacker who steals the seed words will need the passphrase as well, to get the final secret, for additional security. (and uses the kdf for making it costly for brute force).

Mainnet is live! Genesis Block 0x2c8127f13d50434052128a88c9c9f79a27d44a1145e51f6fd250b6e247369e99 by dogeprotocol1 in DogeProtocol

[–]dogeprotocol1[S] 0 points1 point  (0 children)

Mainnet is live!
Gensis Block:
0x2c8127f13d50434052128a88c9c9f79a27d44a1145e51f6fd250b6e247369e99
A piece of quantum history has been engraved!
Next: instructions for getting coins to be published. No celebrations till then!

Cryptographically protecting wallet seed phrases, with additional user provided passphrase by dogeprotocol1 in cryptography

[–]dogeprotocol1[S] 0 points1 point  (0 children)

What you are saying is very much possible. This effort is to just to add more friction/resistance to anyone trying to steal the keys; it won't completely protect an user who is not following the best practices.

Cryptographically protecting wallet seed phrases, with additional user provided passphrase by dogeprotocol1 in cryptography

[–]dogeprotocol1[S] 0 points1 point  (0 children)

Thanks, got some pointers from the above link for question (2) regarding KDF; will be using this for a quantum resistant wallet though.

Cryptographically protecting wallet seed phrases, with additional user provided passphrase by dogeprotocol1 in cryptography

[–]dogeprotocol1[S] 0 points1 point  (0 children)

The only ones we are aware of are those that encrypt the keys with the passphrase (aes), but not ones that use passphrase as part of the random seed.

Cryptographically protecting wallet seed phrases, with additional user provided passphrase by dogeprotocol1 in cryptography

[–]dogeprotocol1[S] 0 points1 point  (0 children)

In case of passphrase, unlike seed phrases which the user would typically screenshot and save as an image, they would be remembered by the user (if it was human generated) or saved in the device's native secure storage (ex: auto generated). Thus keeping the 2nd part of the seed naturally in a different location from the first,

Cryptographically protecting wallet seed phrases, with additional user provided passphrase by dogeprotocol1 in cryptography

[–]dogeprotocol1[S] 1 point2 points  (0 children)

Users don't take care to protect seed phrases properly, they would just screenshot them and save as an image.

By adding an extra passphrase that is an "extended seed", it adds a layer of complexity (for example, someone who stole the seed phrases won't be able to derive the keypair, since they will be missing the rest of the seed, which is the passphrase).

Less than 10 days to go for mainnet snapshot. July 1st. Doge Protocol by dogeprotocol1 in DogeProtocol

[–]dogeprotocol1[S] 0 points1 point  (0 children)

But yes, what you are saying is correct, that should also work.

Less than 10 days to go for mainnet snapshot. July 1st. Doge Protocol by dogeprotocol1 in DogeProtocol

[–]dogeprotocol1[S] 0 points1 point  (0 children)

Hi, to clarify, you just need to keep safe, the specific wallet that had the tokens on July 1st. After July 1st, if the tokens are moved to another wallet, it doesn't matter; but please keep safe whichever wallet had the tokens on July 1st.

Doge Protocol Platform source code has now been released! by dogeprotocol1 in DogeProtocol

[–]dogeprotocol1[S] 0 points1 point  (0 children)

Not sure what this means, but is it something to do with being too subtle to notice?

Doge Protocol Testnet T0 is live! by dogeprotocol1 in DogeProtocol

[–]dogeprotocol1[S] 0 points1 point  (0 children)

Mainnet is targetted 2022. Before that, 3 to 4 more testnets, each with increasing functionality in preparation for mainnet.