Skip to content

Instantly share code, notes, and snippets.

Avatar

Frank Denis jedisct1

View GitHub Profile
View relaycheck.sh
#! /bin/sh
CONFIG="/tmp/dnscrypt-proxy.toml"
TEST_SERVER="sdns://AQcAAAAAAAAADTUxLjE1LjEyMi4yNTAg6Q3ZfapcbHgiHKLF7QFoli0Ty1Vsz3RXs1RUbxUrwZAcMi5kbnNjcnlwdC1jZXJ0LnNjYWxld2F5LWFtcw"
DNSCRYPT_PROXY=~/src/dnscrypt-proxy/dnscrypt-proxy/dnscrypt-proxy
PIDFILE="/tmp/dnscrypt-proxy.pid"
relaycheck() {
stamp="$1"
{
View gist:23c38853005f5dad07abca35dcddcdc2
const std = @import("std");
const big = std.math.big;
const Allocator = std.mem.Allocator;
const crypto = std.crypto;
const Managed = big.int.Managed;
const Const = big.int.Const;
const Order = std.math.Order;
fn powMod(res: *Managed, b: Const, e: Const, m: Const) !void {
View zig.sh
#! /bin/sh
if ! command zig version >/dev/null; then
echo "Zig >= 0.8.0 is required" >&2
exit 1
fi
TARGET="x86_64-linux-gnu"
export PREFIX="$(pwd)/libsodium-${TARGET}"
View gist:fca61a2695d7831914571e7f36556abd
.
└── zig
├── include
│   ├── __clang_cuda_builtin_vars.h
│   ├── __clang_cuda_cmath.h
│   ├── __clang_cuda_complex_builtins.h
│   ├── __clang_cuda_device_functions.h
│   ├── __clang_cuda_intrinsics.h
│   ├── __clang_cuda_libdevice_declares.h
│   ├── __clang_cuda_math.h
View secp256k1.zig
//! Autogenerated: './src/ExtractionOCaml/word_by_word_montgomery' --lang Zig secp256k1 64 '2^256 - 2^32 - 977' --internal-static --public-function-case camelCase --private-function-case camelCase --no-prefix-fiat
//! curve description: secp256k1
//! machine_wordsize = 64 (from "64")
//! requested operations: (all)
//! m = 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f (from "2^256 - 2^32 - 977")
//!
//! NOTE: In addition to the bounds specified above each function, all
//! functions synthesized for this Montgomery arithmetic require the
//! input to be strictly less than the prime modulus (m), and also
//! require the input to be in the unique saturated representation.
View p256.zig
//! Autogenerated: './src/ExtractionOCaml/word_by_word_montgomery' --lang Zig p256 64 '2^256 - 2^224 + 2^192 + 2^96 - 1' --internal-static --public-function-case camelCase --private-function-case camelCase --no-prefix-fiat
//! curve description: p256
//! machine_wordsize = 64 (from "64")
//! requested operations: (all)
//! m = 0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff (from "2^256 - 2^224 + 2^192 + 2^96 - 1")
//!
//! NOTE: In addition to the bounds specified above each function, all
//! functions synthesized for this Montgomery arithmetic require the
//! input to be strictly less than the prime modulus (m), and also
//! require the input to be in the unique saturated representation.
View a.zig
//! Autogenerated: './src/ExtractionOCaml/unsaturated_solinas' --lang Zig curve25519 64 '(auto)' 2^255-19 --internal-static --public-function-case camelCase --private-function-case camelCase --no-prefix-fiat
//! curve description: curve25519
//! machine_wordsize = 64 (from "64")
//! requested operations: (all)
//! n = 5 (from "(auto)")
//! s-c = 2^255 - [(1, 19)] (from "2^255-19")
//! tight_bounds_multiplier = 1 (from "")
//!
//! Computed values:
//! carry_chain = [0, 1, 2, 3, 4, 0, 1]
@jedisct1
jedisct1 / tls-cert-hash.go
Created Nov 29, 2020
Compute the hash of a TLS certificate
View tls-cert-hash.go
package main
import (
"crypto/sha256"
"crypto/x509"
"fmt"
"io/ioutil"
)
func main() {
View wasi.zig
// This file was automatically generated by zig-witx - Do not edit manually.
pub const handle = i32;
pub const char = u8;
pub const untyped_ptr = usize;
pub const wasi_string_ptr = *u8;
// size
pub const size = u32;
View b.zig
// This file was automatically generated by zig-witx - Do not edit manually.
pub const handle = i32;
pub const char = u8;
pub const untyped_ptr = usize;
pub const wasi_string_ptr = *u8;
// Error codes.
pub const crypto_errno = enum(u16) {
// Operation succeeded.