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


Java ECKey.sign方法代码示例

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


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

示例1: sign

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
private String sign(String data, ECKey ecKey) {
    byte[] dataHash = TypeConverter.stringHexToByteArray(data);
    ECKey.ECDSASignature signature = ecKey.sign(dataHash);

    String signatureAsString = signature.r.toString() + signature.s.toString() + signature.v;

    return TypeConverter.toJsonHex(signatureAsString);
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:9,代码来源:EthModuleWalletEnabled.java

示例2: fallbackSign

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
private byte[] fallbackSign(byte[] hash, ECKey privKey) {
    ECKey.ECDSASignature signature = privKey.sign(hash);

    byte vdata = signature.v;
    byte[] rdata = signature.r.toByteArray();
    byte[] sdata = signature.s.toByteArray();

    byte[] vencoded = RLP.encodeByte(vdata);
    byte[] rencoded = RLP.encodeElement(rdata);
    byte[] sencoded = RLP.encodeElement(sdata);

    return RLP.encodeList(vencoded, rencoded, sencoded);
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:14,代码来源:MinerServerImpl.java

示例3: encode

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
public PeerDiscoveryMessage encode(byte[] type, byte[] data, ECKey privKey) {
    /* [1] Calc sha3 - prepare for sig */
    byte[] payload = new byte[type.length + data.length];
    payload[0] = type[0];
    System.arraycopy(data, 0, payload, 1, data.length);
    byte[] forSig = sha3(payload);

    /* [2] Crate signature*/
    ECKey.ECDSASignature ecdsaSignature = privKey.sign(forSig);

    ecdsaSignature.v -= 27;

    byte[] sigBytes =
            merge(BigIntegers.asUnsignedByteArray(32, ecdsaSignature.r),
                    BigIntegers.asUnsignedByteArray(32, ecdsaSignature.s), new byte[]{ecdsaSignature.v});

    // [3] calculate MDC
    byte[] forSha = merge(sigBytes, type, data);

    // wrap all the data in to the packet
    this.mdc = sha3(forSha);
    this.signature = sigBytes;
    this.type = type;
    this.data = data;

    this.wire = merge(this.mdc, this.signature, this.type, this.data);

    return this;
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:30,代码来源:PeerDiscoveryMessage.java

示例4: fallbackSign

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
byte[] fallbackSign(byte[] hash, ECKey privKey) {
    ECKey.ECDSASignature signature = privKey.sign(hash);

    byte vdata = signature.v;
    byte[] rdata = signature.r.toByteArray();
    byte[] sdata = signature.s.toByteArray();

    byte[] vencoded =  RLP.encodeByte(vdata);
    byte[] rencoded = RLP.encodeElement(rdata);
    byte[] sencoded = RLP.encodeElement(sdata);

    return RLP.encodeList(vencoded, rencoded, sencoded);
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:14,代码来源:BlockGenerator.java

示例5: encode

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
public Message encode(byte[] type, byte[] data, ECKey privKey) {

        /* [1] Calc keccak - prepare for sig */
        byte[] payload = new byte[type.length + data.length];
        payload[0] = type[0];
        System.arraycopy(data, 0, payload, 1, data.length);
        byte[] forSig = sha3(payload);

        /* [2] Crate signature*/
        ECKey.ECDSASignature signature = privKey.sign(forSig);

        signature.v -= 27;

        byte[] sigBytes =
                merge(BigIntegers.asUnsignedByteArray(32, signature.r),
                        BigIntegers.asUnsignedByteArray(32, signature.s), new byte[]{signature.v});

        // [3] calculate MDC
        byte[] forSha = merge(sigBytes, type, data);
        byte[] mdc = sha3(forSha);

        // wrap all the data in to the packet
        this.mdc = mdc;
        this.signature = sigBytes;
        this.type = type;
        this.data = data;

        this.wire = merge(this.mdc, this.signature, this.type, this.data);

        return this;
    }
 
开发者ID:Aptoide,项目名称:AppCoins-ethereumj,代码行数:32,代码来源:Message.java

示例6: sign

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
public void sign(byte[] privKeyBytes) throws MissingPrivateKeyException {
    byte[] rawHash = this.getRawHash();
    ECKey key = ECKey.fromPrivate(privKeyBytes).decompress();
    this.signature = key.sign(rawHash);
    this.rlpEncoded = null;
}
 
开发者ID:rsksmart,项目名称:rskj,代码行数:7,代码来源:Transaction.java

示例7: sign

import org.ethereum.crypto.ECKey; //导入方法依赖的package包/类
public void sign(ECKey key) throws MissingPrivateKeyException {
    this.signature = key.sign(this.getRawHash());
    this.rlpEncoded = null;
}
 
开发者ID:Aptoide,项目名称:AppCoins-ethereumj,代码行数:5,代码来源:Transaction.java


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