Initial Dever 0.0.1

This commit is contained in:
Codex committed 2026-11-03 03:32:07 +00:00
commit 81233d098c
1479 files changed
+163782

No files matched your search

+33
View File
@@ -0,0 +1,33 @@
verify() (answer: Bool) {
password = dever.crypto.token(16)
wrong = dever.crypto.token(32)
hash = dever.crypto.passwordHash(password)
accepted = dever.crypto.passwordVerify(password, hash)
rejected = dever.crypto.passwordVerify(wrong, hash)
data = dever.bytes.fromText("message")
first = dever.crypto.hmacSha256(password, data)
second = dever.crypto.hmacSha256(password, data)
digest = dever.crypto.sha256(dever.bytes.fromText("abc"))
expected = dever.bytes.fromInts([186, 120, 22, 191, 143, 1, 207, 234, 65, 65, 64, 222, 93, 174, 34, 35, 176, 3, 97, 163, 150, 23, 122, 156, 180, 16, 255, 97, 242, 0, 21, 173])
answer = accepted and not rejected and dever.crypto.constantTimeEq(first, second) and dever.bytes.length(first) == 32 and dever.crypto.constantTimeEq(digest, expected)
}
asyncVerify() (answer: Bool) {
password = dever.crypto.token(16)
hash = blocking(dever.crypto.passwordHash(password))
answer = blocking(dever.crypto.passwordVerify(password, hash))
}
rejected(value: dever.crypto.VerifyResult.Ready(valid)) (answer: Bool) recover("观察不支持的PHC") { answer = false }
rejected(value: dever.crypto.VerifyResult.Failed(message)) (answer: Bool) recover("观察不支持的PHC") { answer = length(message) > 0 }
phcVerify() (answer: Bool) {
password = dever.crypto.token(16)
answer = rejected(result(dever.crypto.passwordVerify(password, "$argon2id$v=19$m=19456,t=2,p=536870912$c29tZXNhbHQ$AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA")))
}
invalid() () { password = dever.crypto.token(0) }
leak() (value: Secret?) { value = null }
leakList() (values: List<Secret>) { values = [] }