I hereby claim:
- I am tolsi on github.
- I am tolsi (https://keybase.io/tolsi) on keybase.
- I have a public key ASA0CeTgUKQhTLd-uw2sGJ9r8dBNvuXpKyS5jm2bQESQ5Ao
To claim this, I am signing this object:
package test | |
import com.muquit.libsodiumjna.SodiumLibrary | |
import scorex.crypto.encode.Base58 | |
import scorex.crypto.signatures.Curve25519 | |
object SignAsWaves extends App { | |
SodiumLibrary.setLibraryPath("/usr/local/Cellar/libsodium/1.0.16/lib/libsodium.dylib") | |
val message = "message" |
#!/bin/bash | |
# Конвертация выгрузки ключей CryptoPro из реестра Windows в папочку с бинарными ключами | |
# Из реестра выгружать ветку HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crypto Pro\Settings\Users\<кто-то>\Keys | |
# Converting the exported CryptoPro keys from the Windows registry to the container folder with binary keys | |
# Dump regedit path from the registry HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crypto Pro\Settings\Users\<username>\Keys | |
curpath=./ | |
temp=$curpath/temp |
object Base58Length { | |
private val BytesMaxValue = 256 | |
private val Base58MaxValue = 58 | |
private val BytesLog = math.log(BytesMaxValue) | |
private val BaseLog = math.log(Base58MaxValue) | |
def base58Length(byteArrayLength: Int): Int = math.ceil(BytesLog / BaseLog * byteArrayLength).toInt | |
def bytesLength(base58Length: Int): Int = math.ceil(BaseLog / BytesLog * base58Length).toInt | |
} |
I hereby claim:
To claim this, I am signing this object:
fun <T> List<T>.permutations(): Sequence<List<T>> { | |
if (this.size == 1) return sequenceOf(this) | |
val list = this | |
return sequence { | |
val sub = list.get(0) | |
for (perm in list.drop(1).permutations()) | |
for (i in 0..perm.size) { | |
val newPerm = perm.toMutableList() | |
newPerm.add(i, sub) | |
yield(newPerm) |
def twos_complement(val, bits): | |
"""compute the 2's complement of int value val""" | |
if (val & (1 << (bits - 1))) != 0: # if sign bit is set e.g., 8bit: 128-255 | |
val = val - (1 << bits) # compute negative value | |
return val | |
def twos_complement_string(val, bits, f): | |
if val >= 0: | |
return f(twos_complement(val, bits)) | |
else: |
from ctypes import c_uint, c_int | |
print(c_uint(c_int(-49).value).value) | |
print(hex(c_uint(c_int(-49).value).value)) | |
print(c_int(c_uint(0x7fffffcf).value).value) | |
print(hex(c_int(c_uint(0x7fffffcf).value).value)) | |
# 4294967247 | |
# 0xffffffcfL |
echo -e \\a |
import wave, array | |
# changed from https://stackoverflow.com/a/43163543/699934 | |
def make_stereo(file1, file2, output): | |
ifile1 = wave.open(file1) | |
ifile2 = wave.open(file2) | |
print(ifile1.getparams()) | |
# (1, 2, 44100, 2013900, 'NONE', 'not compressed') | |
(nchannels, sampwidth, framerate, nframes, comptype, compname) = ifile1.getparams() | |
assert ifile1.getparams() == ifile2.getparams() |