当前位置: 首页>>代码示例>>Java>>正文


Java ECKey.getPubKeyPoint方法代码示例

本文整理汇总了Java中org.ethereum.crypto.ECKey.getPubKeyPoint方法的典型用法代码示例。如果您正苦于以下问题:Java ECKey.getPubKeyPoint方法的具体用法?Java ECKey.getPubKeyPoint怎么用?Java ECKey.getPubKeyPoint使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.ethereum.crypto.ECKey的用法示例。


在下文中一共展示了ECKey.getPubKeyPoint方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: makeAuthInitiateV4

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
AuthResponseMessageV4 makeAuthInitiateV4(AuthInitiateMessageV4 initiate, ECKey key) {
    initiatorNonce = initiate.nonce;
    remotePublicKey = initiate.publicKey;
    BigInteger secretScalar = remotePublicKey.multiply(key.getPrivKey()).normalize().getXCoord().toBigInteger();
    byte[] token = ByteUtil.bigIntegerToBytes(secretScalar, NONCE_SIZE);
    byte[] signed = xor(token, initiatorNonce);

    ECKey ephemeral = ECKey.recoverFromSignature(recIdFromSignatureV(initiate.signature.v),
            initiate.signature, signed, false);
    if (ephemeral == null) {
        throw new RuntimeException("failed to recover signatue from message");
    }
    remoteEphemeralKey = ephemeral.getPubKeyPoint();
    AuthResponseMessageV4 response = new AuthResponseMessageV4();
    response.ephemeralPublicKey = ephemeralKey.getPubKeyPoint();
    response.nonce = responderNonce;
    return response;
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:19,代码来源:EncryptionHandshake.java

示例2: createAuthInitiate

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
/**
 * Create a handshake auth message
 *
 * @param token previous token if we had a previous session
 * @param key our private key
 */
public AuthInitiateMessage createAuthInitiate(@Nullable byte[] token, ECKey key) {
    AuthInitiateMessage message = new AuthInitiateMessage();
    boolean isToken;
    if (token == null) {
        isToken = false;
        BigInteger secretScalar = remotePublicKey.multiply(key.getPrivKey()).normalize().getXCoord().toBigInteger();
        token = ByteUtil.bigIntegerToBytes(secretScalar, NONCE_SIZE);
    } else {
        isToken = true;
    }

    byte[] nonce = initiatorNonce;
    byte[] signed = xor(token, nonce);
    message.signature = ephemeralKey.sign(signed);
    message.isTokenUsed = isToken;
    message.ephemeralPublicHash = sha3(ephemeralKey.getPubKeyPoint().getEncoded(false), 1, 64);
    message.publicKey = key.getPubKeyPoint();
    message.nonce = initiatorNonce;
    return message;
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:27,代码来源:EncryptionHandshake.java

示例3: makeAuthInitiate

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
AuthResponseMessage makeAuthInitiate(AuthInitiateMessage initiate, ECKey key) {
    initiatorNonce = initiate.nonce;
    remotePublicKey = initiate.publicKey;
    BigInteger secretScalar = remotePublicKey.multiply(key.getPrivKey()).normalize().getXCoord().toBigInteger();
    byte[] token = ByteUtil.bigIntegerToBytes(secretScalar, NONCE_SIZE);
    byte[] signed = xor(token, initiatorNonce);

    ECKey ephemeral = ECKey.recoverFromSignature(recIdFromSignatureV(initiate.signature.v),
            initiate.signature, signed, false);
    if (ephemeral == null) {
        throw new RuntimeException("failed to recover signatue from message");
    }
    remoteEphemeralKey = ephemeral.getPubKeyPoint();
    AuthResponseMessage response = new AuthResponseMessage();
    response.isTokenUsed = initiate.isTokenUsed;
    response.ephemeralPublicKey = ephemeralKey.getPubKeyPoint();
    response.nonce = responderNonce;
    return response;
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:20,代码来源:EncryptionHandshake.java

示例4: makeAuthInitiateV4

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
AuthResponseMessageV4 makeAuthInitiateV4(AuthInitiateMessageV4 initiate, ECKey key) {
    initiatorNonce = initiate.nonce;
    remotePublicKey = initiate.publicKey;

    BigInteger secretScalar = key.keyAgreement(remotePublicKey);

    byte[] token = ByteUtil.bigIntegerToBytes(secretScalar, NONCE_SIZE);
    byte[] signed = xor(token, initiatorNonce);

    ECKey ephemeral = ECKey.recoverFromSignature(recIdFromSignatureV(initiate.signature.v),
            initiate.signature, signed);
    if (ephemeral == null) {
        throw new RuntimeException("failed to recover signatue from message");
    }
    remoteEphemeralKey = ephemeral.getPubKeyPoint();
    AuthResponseMessageV4 response = new AuthResponseMessageV4();
    response.ephemeralPublicKey = ephemeralKey.getPubKeyPoint();
    response.nonce = responderNonce;
    return response;
}
 
开发者ID:Aptoide,项目名称:AppCoins-ethereumj,代码行数:21,代码来源:EncryptionHandshake.java

示例5: createAuthInitiate

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
/**
 * Create a handshake auth message
 *
 * @param token previous token if we had a previous session
 * @param key our private key
 */
public AuthInitiateMessage createAuthInitiate(@Nullable byte[] token, ECKey key) {
    AuthInitiateMessage message = new AuthInitiateMessage();
    boolean isToken;
    if (token == null) {
        isToken = false;
        BigInteger secretScalar = key.keyAgreement(remotePublicKey);
        token = ByteUtil.bigIntegerToBytes(secretScalar, NONCE_SIZE);
    } else {
        isToken = true;
    }

    byte[] nonce = initiatorNonce;
    byte[] signed = xor(token, nonce);
    message.signature = ephemeralKey.sign(signed);
    message.isTokenUsed = isToken;
    message.ephemeralPublicHash = sha3(ephemeralKey.getPubKey(), 1, 64);
    message.publicKey = key.getPubKeyPoint();
    message.nonce = initiatorNonce;
    return message;
}
 
开发者ID:Aptoide,项目名称:AppCoins-ethereumj,代码行数:27,代码来源:EncryptionHandshake.java

示例6: makeAuthInitiate

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
AuthResponseMessage makeAuthInitiate(AuthInitiateMessage initiate, ECKey key) {
    initiatorNonce = initiate.nonce;
    remotePublicKey = initiate.publicKey;
    BigInteger secretScalar = key.keyAgreement(remotePublicKey);
    byte[] token = ByteUtil.bigIntegerToBytes(secretScalar, NONCE_SIZE);
    byte[] signed = xor(token, initiatorNonce);

    ECKey ephemeral = ECKey.recoverFromSignature(recIdFromSignatureV(initiate.signature.v),
            initiate.signature, signed);
    if (ephemeral == null) {
        throw new RuntimeException("failed to recover signatue from message");
    }
    remoteEphemeralKey = ephemeral.getPubKeyPoint();
    AuthResponseMessage response = new AuthResponseMessage();
    response.isTokenUsed = initiate.isTokenUsed;
    response.ephemeralPublicKey = ephemeralKey.getPubKeyPoint();
    response.nonce = responderNonce;
    return response;
}
 
开发者ID:Aptoide,项目名称:AppCoins-ethereumj,代码行数:20,代码来源:EncryptionHandshake.java

示例7: createAuthInitiateV4

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
/**
 * Create a handshake auth message defined by EIP-8
 *
 * @param key our private key
 */
public AuthInitiateMessageV4 createAuthInitiateV4(ECKey key) {
    AuthInitiateMessageV4 message = new AuthInitiateMessageV4();
    BigInteger secretScalar = remotePublicKey.multiply(key.getPrivKey()).normalize().getXCoord().toBigInteger();
    byte[] token = ByteUtil.bigIntegerToBytes(secretScalar, NONCE_SIZE);

    byte[] nonce = initiatorNonce;
    byte[] signed = xor(token, nonce);
    message.signature = ephemeralKey.sign(signed);
    message.publicKey = key.getPubKeyPoint();
    message.nonce = initiatorNonce;
    return message;
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:18,代码来源:EncryptionHandshake.java

示例8: setUp

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
@Before
public void setUp() throws Exception {
    ECKey remoteKey = new ECKey();
    ECKey myKey = new ECKey();
    initiator = new EncryptionHandshake(remoteKey.getPubKeyPoint());
    responder = new EncryptionHandshake();
    AuthInitiateMessage initiate = initiator.createAuthInitiate(null, myKey);
    byte[] initiatePacket = initiator.encryptAuthMessage(initiate);
    byte[] responsePacket = responder.handleAuthInitiate(initiatePacket, remoteKey);
    initiator.handleAuthResponse(myKey, initiatePacket, responsePacket);
    to = new PipedInputStream(1024*1024);
    toOut = new PipedOutputStream(to);
    from = new PipedInputStream(1024*1024);
    fromOut = new PipedOutputStream(from);
    iCodec = new FrameCodec(initiator.getSecrets());
    rCodec = new FrameCodec(responder.getSecrets());
    byte[] nodeId = {1, 2, 3, 4};
    iMessage = new HandshakeMessage(
            123,
            "abcd",
            Lists.newArrayList(
                    new Capability("zz", (byte) 1),
                    new Capability("yy", (byte) 3)
            ),
            3333,
            nodeId
    );
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:29,代码来源:RlpxConnectionTest.java

示例9: createAuthInitiateV4

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
/**
 * Create a handshake auth message defined by EIP-8
 *
 * @param key our private key
 */
public AuthInitiateMessageV4 createAuthInitiateV4(ECKey key) {
    AuthInitiateMessageV4 message = new AuthInitiateMessageV4();

    BigInteger secretScalar = key.keyAgreement(remotePublicKey);
    byte[] token = ByteUtil.bigIntegerToBytes(secretScalar, NONCE_SIZE);

    byte[] nonce = initiatorNonce;
    byte[] signed = xor(token, nonce);
    message.signature = ephemeralKey.sign(signed);
    message.publicKey = key.getPubKeyPoint();
    message.nonce = initiatorNonce;
    return message;
}
 
开发者ID:Aptoide,项目名称:AppCoins-ethereumj,代码行数:19,代码来源:EncryptionHandshake.java

示例10: setUp

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
@Before
public void setUp() {
    remoteKey = new ECKey();
    myKey = new ECKey();
    initiator = new EncryptionHandshake(remoteKey.getPubKeyPoint());
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:7,代码来源:EncryptionHandshakeTest.java


注:本文中的org.ethereum.crypto.ECKey.getPubKeyPoint方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。