//static public bool Verify(string pubKey, string msg, string signature) //{ // ECPublicKey pubKey = new ECPublicKey(new ECPoint()); // ECSignature sig = new ECSignature(); // return pubKey.VerifySignature(msg, signature); //} static public string getEthAddress(string secKey) { NECDsa dsa = new NECDsa(); dsa.Import(secKey); return(dsa.ethAddrStr); }
public void GenerateKey(string userKey) { NECDsa dsa = new NECDsa(); dsa.Generate(); ImportKey(userKey, dsa.secKeyStr); dat.Save(); }
static public string SelfTest() { string output = string.Empty; NECDsa dsa = new NECDsa(); dsa.Generate(); dsa.Sign("hello!"); dsa.Sign("hello!"); return(output); }
public bool ImportKey(string userKey, string secKeyHexString) { dat.userKeyMD5 = Utils.GetMD5(Encoding.ASCII.GetBytes(userKey)); if (secKeyHexString.Length != 64) { return(false); } var secKey = Utils.HexStr2Byte(secKeyHexString); var mainKey = NDEA.GenerateKey(); var dea = new NDEA(); dea.SetStringKey(userKey); dat.mainKeyCrypto = dea.EnCrypto(mainKey); dea.SetKey(mainKey); dat.secKeyCrypto = dea.EnCrypto(secKey); dat.address = NECDsa.getEthAddress(secKeyHexString); dat.Save(); return(true); }
void Start() { NixLib.NWallet.SelfTest(); Debug.Log(NixLib.NMnemonicWord.SelfTest()); NDEA.SelfTest(); Debug.Log(Utils.SelfTest()); Debug.Log(NECDsa.SelfTest()); cmUI = GetComponent <CrazyMinerUI>(); cm = GetComponent <CrazyMiner>(); if (PlayerPrefs.HasKey("SecKey")) { keyPair.pri = PlayerPrefs.GetString("SecKey"); keyPair.pub = PlayerPrefs.GetString("PubKey"); keyPair.addr = PlayerPrefs.GetString("Addr"); } else { dsa.Generate(); keyPair.pri = dsa.secKeyStr; keyPair.pub = dsa.pubKeyStr.ToUpper(); keyPair.addr = dsa.ethAddrStr; PlayerPrefs.SetString("SecKey", keyPair.pri); PlayerPrefs.SetString("PubKey", keyPair.pub); PlayerPrefs.SetString("Addr", keyPair.addr); } onnReq.Init(keyPair.pri); onnReq.SetUrlContract(httpAddr, contract); Debug.Log(JsonUtility.ToJson(keyPair)); InvokeRepeating("Tick", 0.3f, 1f); }