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


Java DefaultRiskAnalysis类代码示例

本文整理汇总了Java中org.bitcoinj.wallet.DefaultRiskAnalysis的典型用法代码示例。如果您正苦于以下问题:Java DefaultRiskAnalysis类的具体用法?Java DefaultRiskAnalysis怎么用?Java DefaultRiskAnalysis使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: nonStandardDust

import org.bitcoinj.wallet.DefaultRiskAnalysis; //导入依赖的package包/类
@Test
public void nonStandardDust() {
    Transaction standardTx = new Transaction(params);
    standardTx.addInput(params.getGenesisBlock().getTransactions().get(0).getOutput(0));
    standardTx.addOutput(COIN, key1);
    assertEquals(RiskAnalysis.Result.OK, DefaultRiskAnalysis.FACTORY.create(wallet, standardTx, NO_DEPS).analyze());

    Transaction dustTx = new Transaction(params);
    dustTx.addInput(params.getGenesisBlock().getTransactions().get(0).getOutput(0));
    dustTx.addOutput(Coin.SATOSHI, key1); // 1 Satoshi
    assertEquals(RiskAnalysis.Result.NON_STANDARD, DefaultRiskAnalysis.FACTORY.create(wallet, dustTx, NO_DEPS).analyze());

    Transaction edgeCaseTx = new Transaction(params);
    edgeCaseTx.addInput(params.getGenesisBlock().getTransactions().get(0).getOutput(0));
    edgeCaseTx.addOutput(DefaultRiskAnalysis.MIN_ANALYSIS_NONDUST_OUTPUT, key1); // Dust threshold
    assertEquals(RiskAnalysis.Result.OK, DefaultRiskAnalysis.FACTORY.create(wallet, edgeCaseTx, NO_DEPS).analyze());
}
 
开发者ID:HashEngineering,项目名称:namecoinj,代码行数:18,代码来源:DefaultRiskAnalysisTest.java

示例2: standardOutputs

import org.bitcoinj.wallet.DefaultRiskAnalysis; //导入依赖的package包/类
@Test
public void standardOutputs() throws Exception {
    Transaction tx = new Transaction(params);
    tx.addInput(params.getGenesisBlock().getTransactions().get(0).getOutput(0));
    // A pay to address output
    tx.addOutput(Coin.CENT, ScriptBuilder.createOutputScript(key1.toAddress(params)));
    // A pay to pubkey output
    tx.addOutput(Coin.CENT, ScriptBuilder.createOutputScript(key1));
    tx.addOutput(Coin.CENT, ScriptBuilder.createOutputScript(key1));
    // 1-of-2 multisig output.
    ImmutableList<ECKey> keys = ImmutableList.of(key1, new ECKey());
    tx.addOutput(Coin.CENT, ScriptBuilder.createMultiSigOutputScript(1, keys));
    // 2-of-2 multisig output.
    tx.addOutput(Coin.CENT, ScriptBuilder.createMultiSigOutputScript(2, keys));
    // P2SH
    tx.addOutput(Coin.CENT, ScriptBuilder.createP2SHOutputScript(1, keys));
    // OP_RETURN
    tx.addOutput(Coin.CENT, ScriptBuilder.createOpReturnScript("hi there".getBytes()));
    assertEquals(RiskAnalysis.Result.OK, DefaultRiskAnalysis.FACTORY.create(wallet, tx, NO_DEPS).analyze());
}
 
开发者ID:HashEngineering,项目名称:namecoinj,代码行数:21,代码来源:DefaultRiskAnalysisTest.java

示例3: main

import org.bitcoinj.wallet.DefaultRiskAnalysis; //导入依赖的package包/类
public static void main(String[] args) throws InterruptedException {
    BriefLogFormatter.init();
    PeerGroup peerGroup = new PeerGroup(PARAMS);
    peerGroup.setMaxConnections(32);
    peerGroup.addPeerDiscovery(new DnsDiscovery(PARAMS));
    peerGroup.addOnTransactionBroadcastListener(new OnTransactionBroadcastListener() {
        @Override
        public void onTransaction(Peer peer, Transaction tx) {
            Result result = DefaultRiskAnalysis.FACTORY.create(null, tx, NO_DEPS).analyze();
            incrementCounter(TOTAL_KEY);
            log.info("tx {} result {}", tx.getHash(), result);
            incrementCounter(result.name());
            if (result == Result.NON_STANDARD)
                incrementCounter(Result.NON_STANDARD + "-" + DefaultRiskAnalysis.isStandard(tx));
        }
    });
    peerGroup.start();

    while (true) {
        Thread.sleep(STATISTICS_FREQUENCY_MS);
        printCounters();
    }
}
 
开发者ID:HashEngineering,项目名称:dashj,代码行数:24,代码来源:WatchMempool.java

示例4: nonFinalDependency

import org.bitcoinj.wallet.DefaultRiskAnalysis; //导入依赖的package包/类
@Test
public void nonFinalDependency() {
    // Final tx has a dependency that is non-final.
    Transaction tx1 = new Transaction(params);
    tx1.addInput(params.getGenesisBlock().getTransactions().get(0).getOutput(0)).setSequenceNumber(1);
    TransactionOutput output = tx1.addOutput(COIN, key1);
    tx1.setLockTime(TIMESTAMP + 86400);
    Transaction tx2 = new Transaction(params);
    tx2.addInput(output);
    tx2.addOutput(COIN, new ECKey());

    DefaultRiskAnalysis analysis = DefaultRiskAnalysis.FACTORY.create(wallet, tx2, ImmutableList.of(tx1));
    assertEquals(RiskAnalysis.Result.NON_FINAL, analysis.analyze());
    assertEquals(tx1, analysis.getNonFinal());
}
 
开发者ID:HashEngineering,项目名称:namecoinj,代码行数:16,代码来源:DefaultRiskAnalysisTest.java

示例5: nonShortestPossiblePushData

import org.bitcoinj.wallet.DefaultRiskAnalysis; //导入依赖的package包/类
@Test
public void nonShortestPossiblePushData() {
    ScriptChunk nonStandardChunk = new ScriptChunk(OP_PUSHDATA1, new byte[75]);
    byte[] nonStandardScript = new ScriptBuilder().addChunk(nonStandardChunk).build().getProgram();
    // Test non-standard script as an input.
    Transaction tx = new Transaction(params);
    assertEquals(DefaultRiskAnalysis.RuleViolation.NONE, DefaultRiskAnalysis.isStandard(tx));
    tx.addInput(new TransactionInput(params, null, nonStandardScript));
    assertEquals(DefaultRiskAnalysis.RuleViolation.SHORTEST_POSSIBLE_PUSHDATA, DefaultRiskAnalysis.isStandard(tx));
    // Test non-standard script as an output.
    tx.clearInputs();
    assertEquals(DefaultRiskAnalysis.RuleViolation.NONE, DefaultRiskAnalysis.isStandard(tx));
    tx.addOutput(new TransactionOutput(params, null, COIN, nonStandardScript));
    assertEquals(DefaultRiskAnalysis.RuleViolation.SHORTEST_POSSIBLE_PUSHDATA, DefaultRiskAnalysis.isStandard(tx));
}
 
开发者ID:HashEngineering,项目名称:namecoinj,代码行数:16,代码来源:DefaultRiskAnalysisTest.java

示例6: isStandard

import org.bitcoinj.wallet.DefaultRiskAnalysis; //导入依赖的package包/类
/**
 * <p>Returns either RuleViolation.NONE if the input is standard, or which rule makes it non-standard if so.
 * The "IsStandard" rules control whether the default Bitcoin Core client blocks relay of a tx / refuses to mine it,
 * however, non-standard transactions can still be included in blocks and will be accepted as valid if so.</p>
 *
 * <p>This method simply calls <tt>DefaultRiskAnalysis.isInputStandard(this)</tt>.</p>
 */
public DefaultRiskAnalysis.RuleViolation isStandard() {
    return DefaultRiskAnalysis.isInputStandard(this);
}
 
开发者ID:guodroid,项目名称:okwallet,代码行数:11,代码来源:TransactionInput.java


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