Skip to content

Instantly share code, notes, and snippets.

@Hribek25
Hribek25 / IOTA101_67D98D069B61.cs
Last active September 24, 2019 10:30
Generating a seed: a general approach
// The snippet is a part of the IOTA Developer Essentials project. You can reach it at https://hribek25.github.io/IOTA101/
// Complete description and story behind the snippet is available at: https://hribek25.github.io/IOTA101/Allchapters_csharp.ipynb.html#67D98D069B61
//based on https://github.com/siqniz/IOTA-Random-Seed-Generator
using System.Security.Cryptography;
private static string NewRandomSeed()
{
string iotaseed = string.Empty;
using (RNGCryptoServiceProvider _ran = new RNGCryptoServiceProvider()) // The class provides crypto-safe random generator
@Hribek25
Hribek25 / IOTA101_696A395DC61B.cs
Last active September 24, 2019 10:30
Basic node interaction: API call Get_node_info()
// The snippet is a part of the IOTA Developer Essentials project. You can reach it at https://hribek25.github.io/IOTA101/
// Complete description and story behind the snippet is available at: https://hribek25.github.io/IOTA101/Allchapters_csharp.ipynb.html#696A395DC61B
// Requirement: Tangle.Net library (!nuget install Tangle.Net)
// Requirement: Newtonsoft Json library (!nuget install Newtonsoft.Json)
// Requirement: RestSharp library (Simple REST and HTTP API Client used with Tangle.Net) (!nuget install RestSharp)
#r "Tangle.Net.dll"
#r "Newtonsoft.Json.dll"
#r "RestSharp.dll"
@Hribek25
Hribek25 / IOTA101_3BB8C879CCAE.cs
Last active September 24, 2019 10:30
Conversion: trytes and trits
// The snippet is a part of the IOTA Developer Essentials project. You can reach it at https://hribek25.github.io/IOTA101/
// Complete description and story behind the snippet is available at: https://hribek25.github.io/IOTA101/Allchapters_csharp.ipynb.html#3BB8C879CCAE
// Requirement: Tangle.Net library (!nuget install Tangle.Net)
#r "Tangle.Net.dll"
using Tangle.Net.Entity;
var trytes = new TryteString("YZJEATEQ9JKLZ");
Console.WriteLine(trytes.ToString());
Console.WriteLine("Number of Trytes: " + trytes.TrytesLength);
@Hribek25
Hribek25 / IOTA101_07CFD43B146C.js
Last active September 24, 2019 10:30
Sending IOTA transaction in more granular way: API calls Prepare_transfer() and Send_transfer()
// The snippet is a part of the IOTA Developer Essentials project. You can reach it at https://hribek25.github.io/IOTA101/
// Complete description and story behind the snippet is available at: https://hribek25.github.io/IOTA101/Allchapters_javascript.ipynb.html#07CFD43B146C
// Requirement: A core module of IOTA Javascript Library (!npm install @iota/core)
var iotalib = require('@iota/core');
var NodeURL = "https://nodes.thetangle.org:443";
var iota = iotalib.composeAPI({
'provider': NodeURL
@Hribek25
Hribek25 / IOTA101_00663E550ADF.js
Last active September 24, 2019 10:30
Sending IOTA transaction in a single call: API call Send_transfer()
// The snippet is a part of the IOTA Developer Essentials project. You can reach it at https://hribek25.github.io/IOTA101/
// Complete description and story behind the snippet is available at: https://hribek25.github.io/IOTA101/Allchapters_javascript.ipynb.html#00663E550ADF
// Requirement: A converter module of IOTA Javascript Library (!npm install @iota/converter)
// Requirement: A core module of IOTA Javascript Library (!npm install @iota/core)
// Requirement: A transaction-converter module of IOTA Javascript Library (!npm install @iota/transaction-converter)
var iotalib = require('@iota/core');
var Converter = require('@iota/converter')
var TransactionConverter = require('@iota/transaction-converter')
@Hribek25
Hribek25 / IOTA101_445C2B9485C6.js
Last active September 24, 2019 10:30
Preparing IOTA transactions to be broadcasted
// The snippet is a part of the IOTA Developer Essentials project. You can reach it at https://hribek25.github.io/IOTA101/
// Complete description and story behind the snippet is available at: https://hribek25.github.io/IOTA101/Allchapters_javascript.ipynb.html#445C2B9485C6
// Requirement: A converter module of IOTA Javascript Library (!npm install @iota/converter)
// Requirement: A core module of IOTA Javascript Library (!npm install @iota/core)
var iotalib = require('@iota/core');
var Converter = require('@iota/converter')
var NodeURL = "https://nodes.thetangle.org:443";
var iota = iotalib.composeAPI({
@Hribek25
Hribek25 / IOTA101_C65223B0864A.js
Last active September 24, 2019 10:30
Validating IOTA address
// The snippet is a part of the IOTA Developer Essentials project. You can reach it at https://hribek25.github.io/IOTA101/
// Complete description and story behind the snippet is available at: https://hribek25.github.io/IOTA101/Allchapters_javascript.ipynb.html#C65223B0864A
// Requirement: A checksum module of IOTA Javascript Library (!npm install @iota/checksum)
// Requirement: A validators module of IOTA Javascript Library (!npm install @iota/validators)
var iotalib = require('@iota/checksum');
var iotaValidators = require('@iota/validators');
//address including checksum
var InputAddr = "CYJV9DRIE9NCQJYLOYOJOGKQGOOELTWXVWUYGQSWCNODHJAHACADUAAHQ9ODUICCESOIVZABA9LTMM9RWTHBIRSXTA";
@Hribek25
Hribek25 / IOTA101_39B011574CF0.js
Last active September 24, 2019 10:30
IOTA address and checksum
// The snippet is a part of the IOTA Developer Essentials project. You can reach it at https://hribek25.github.io/IOTA101/
// Complete description and story behind the snippet is available at: https://hribek25.github.io/IOTA101/Allchapters_javascript.ipynb.html#39B011574CF0
// Requirement: A checksum module of IOTA Javascript Library (!npm install @iota/checksum)
var iotalib = require('@iota/checksum'); //this package is also useful when validating an address
//some IOTA address
var Adr = "CYJV9DRIE9NCQJYLOYOJOGKQGOOELTWXVWUYGQSWCNODHJAHACADUAAHQ9ODUICCESOIVZABA9LTMM9RW";
console.log("Original input excl. checksum address:");
@Hribek25
Hribek25 / IOTA101_2508A6FF9241.js
Last active September 24, 2019 10:30
Generating IOTA addresses from a seed (#2)
// The snippet is a part of the IOTA Developer Essentials project. You can reach it at https://hribek25.github.io/IOTA101/
// Complete description and story behind the snippet is available at: https://hribek25.github.io/IOTA101/Allchapters_javascript.ipynb.html#2508A6FF9241
// Requirement: A core module of IOTA Javascript Library (!npm install @iota/core)
var iotalib = require('@iota/core');
var MySeed = "WKQDUZTGFKSSLACUCHHLZRKZBHSDSCEBHKUPDLKFBQALEBKDMFRPUQGZRXAADPG9TSRTZGGBZOFRJCFMM";
//Please note, it is a sync function call
//Please also note that generating addresses can take quite long
@Hribek25
Hribek25 / IOTA101_0FF479CB6C0A.js
Last active September 24, 2019 10:30
Generating IOTA addresses from a seed: API call Get_new_addresses()
// The snippet is a part of the IOTA Developer Essentials project. You can reach it at https://hribek25.github.io/IOTA101/
// Complete description and story behind the snippet is available at: https://hribek25.github.io/IOTA101/Allchapters_javascript.ipynb.html#0FF479CB6C0A
// Requirement: A core module of IOTA Javascript Library (!npm install @iota/core)
var iotalib = require('@iota/core');
var NodeURL = "https://nodes.thetangle.org:443";
var MySeed = "WKQDUZTGFKSSLACUCHHLZRKZBHSDSCEBHKUPDLKFBQALEBKDMFRPUQGZRXAADPG9TSRTZGGBZOFRJCFMM";
var iota = iotalib.composeAPI({