Skip to content

Instantly share code, notes, and snippets.

View kushti's full-sized avatar

Alexander Chepurnoy kushti

View GitHub Profile
ergo {
node {
stateType = "digest"
blocksToKeep = 2880
mining = false
}
}
scorex {
package org.ergoplatform.wallet;
import org.ergoplatform.*;
import org.ergoplatform.wallet.interface4j.crypto.ErgoUnsafeProver;
import org.ergoplatform.wallet.secrets.ExtendedSecretKey;
import scorex.util.Random;
public class CreateTransactionDemo {
/**
package org.ergoplatform.wallet;
import org.ergoplatform.ErgoAddressEncoder;
import org.ergoplatform.P2PKAddress;
import org.ergoplatform.wallet.mnemonic.Mnemonic;
import org.ergoplatform.wallet.secrets.DerivationPath;
import org.ergoplatform.wallet.secrets.ExtendedPublicKey;
import org.ergoplatform.wallet.secrets.ExtendedSecretKey;
import scala.Option;
object v2testing extends App {
implicit val ec: scala.concurrent.ExecutionContext = scala.concurrent.ExecutionContext.global
private val ergoSettings: ErgoSettings = ErgoSettings.read(Args(Some("/home/kushti/ergo/mainnet/mainnet.conf"), Some(NetworkType.MainNet)))
val ntp = new NetworkTimeProvider(ergoSettings.scorexSettings.ntp)
val ldc = new LinearDifficultyControl(ergoSettings.chainSettings)
val eh = ErgoHistory.readOrGenerate(ergoSettings, ntp)
property("testvectors from WP") {
val msg = Base16.decode("82dbfccc40aa9919d21dd2bad90935ec44db013738592466e5dad1fa051cb4ff").get
val nonce = Base16.decode("E8F2800001A12388").get
val height = 5090
val h = Ints.toByteArray(height)
val pow = new AutolykosPowScheme(32, 26)
ergo {
networkType = "testnet"
node {
mining = true
}
}
scorex {
emission.minersRewardAtHeight(525000) shouldBe 67500000000L
emission.minersRewardAtHeight(525600) shouldBe 67500000000L
emission.minersRewardAtHeight(590400) shouldBe 67500000000L
emission.minersRewardAtHeight(655200) shouldBe 66000000000L
emission.minersRewardAtHeight(720000) shouldBe 63000000000L
emission.minersRewardAtHeight(784800) shouldBe 60000000000L
emission.minersRewardAtHeight(849600) shouldBe 57000000000L
emission.minersRewardAtHeight(914400) shouldBe 54000000000L
emission.minersRewardAtHeight(979200) shouldBe 51000000000L
@kushti
kushti / pred.md
Last active December 9, 2020 10:45
  • Свойства абсолютной и достаточной стойкости схемы шифрования
  • Определения атак на схему шифрования
  • Свойства безопасности хэш-функции. Понятие идеальной хэш-функции.
  • Определение генератора псевдослучайной последовательности. Шифр виртуальных блокнотов.
  • Схема Мёркла-Дамгарда.
  • Построение дерева Мёркла и доказательства наличия листа в дереве.
  • Определение цифровой подписи. Схема подписи Лампорта-Диффи.
  • Покажите, что атакующий, не ограниченный вычислительными ресурсами, может отличить выход генератора псевдослучайных последовательностей, для $l(n) = 2 \cdot n$ от случайной строки длиной $2 \cdot n$.
  • Покажите, что атакующий, не ограниченный вычислительными ресурсами, способен взломать шифр виртуальных блокнотов.
  • Докажите, что шифр одноразовых блокнотов, как и любой другой шифр с детерминированной функцией $Enc_k(\cdot)$ не является стойким для случая перехвата множества сообщений.
ergo {
networkType = "testnet"
node {
mining = true
# offlineGeneration = true
# useExternalMiner = false
}
chain {
object SigmaByteArrayEncode extends App {
import scorex.util.encode.Base16
val bs = Base16.decode("10010101d801d601d17300ea0272017201").get
val bac = ByteArrayConstant(bs)
println(Base16.encode(ValueSerializer.serialize(bac)))
}