최근 ECDSA 코드로 무언가를하려했습니다. 나는 그것의 핵심 길이를 헛되이 바꾸고 싶다. 인터넷을 확인한 후 ECDSA 소스 코드를 발견했지만 어떻게 든 32 바이트 만 허용합니다. this 웹 사이트에서ECDSA의 키 길이를 변경하는 방법은 무엇입니까?
var crypto = require("crypto");
var eccrypto = require("eccrypto");
// A new random 32-byte private key.
var privateKey = crypto.randomBytes(32);
// Corresponding uncompressed (65-byte) public key.
var publicKey = eccrypto.getPublic(privateKey);
var str = "message to sign";
// Always hash you message to sign!
var msg = crypto.createHash("sha256").update(str).digest();
eccrypto.sign(privateKey, msg).then(function(sig) {
console.log("Signature in DER format:", sig);
eccrypto.verify(publicKey, msg, sig).then(function() {
console.log("Signature is OK");
}).catch(function() {
console.log("Signature is BAD");
});
});
:
예를 들어,이를 발견했다. privateKey를 32 바이트에서 16 바이트 및 다른 값으로 변경하려고했습니다. 그것은 나에게 오류를주는 것을 끝내었다.
최근 다른 키 길이를 사용하려면 다른 커브가 필요하다는 것을 발견했습니다. 아무도 위의 코드에서 커브를 변경하는 방법을 알고 있습니까? 그렇지 않은 경우 누군가 ECDSA의 다른 키 길이를 사용할 수있는 소스 코드를 제공합니까?
(나는 ECC에 아주 익숙하다. 잘못된 용어를 사용하거나 완전히 그 개념을 오해한다면 용서해주십시오.)
[더 빠른 답변을 얻기 위해 어떤 상황에서 "긴급한"또는 다른 유사한 문구를 추가 할 수 있습니까?] (// meta.stackoverflow.com/q/326569) - 요약하면 자원 봉사자를 대처하는 이상적인 방법이 아니며, 아마도 답을 얻는 데 비생산적입니다. 이 질문을 귀하의 질문에 추가하지 마십시오. – halfer