hashing   3177

« earlier    

google/highwayhash: Fast strong hash functions: SipHash/HighwayHash
HighwayHash: 'We have devised a new way of mixing inputs with AVX2 multiply and permute instructions. The multiplications are 32x32 -> 64 bits and therefore infeasible to reverse. Permuting equalizes the distribution of the resulting bytes. The internal state occupies four 256-bit AVX2 registers. Due to limitations of the instruction set, the registers are partitioned into two 512-bit halves that remain independent until the reduce phase. The algorithm outputs 64 bit digests or up to 256 bits at no extra cost. In addition to high throughput, the algorithm is designed for low finalization cost. The result is more than twice as fast as SipTreeHash.

We also provide an SSE4.1 version (80% as fast for large inputs and 95% as fast for short inputs), an implementation for VSX on POWER and a portable version (10% as fast). A third-party ARM implementation is referenced below.

Statistical analyses and preliminary cryptanalysis are given in https://arxiv.org/abs/1612.06257.'

(via Tony Finch)
siphash  highwayhash  via:fanf  hashing  hashes  algorithms  mac  google  hash 
9 days ago by jm
SegWit Paper Wallet
An open source bitcoin paper wallet generator that utilizes Segregated Witness (SegWit) Pay To Witness Public Key Hash (P2WPKH) addresses and transactions. Segwitaddress.org uses the BitcoinJS library.
cryptocurrency  opensource  generator  hashing  tools 
17 days ago by liqweed
Dagger: A Memory-Hard to Compute, Memory-Easy to Verify Scrypt Alternative
Dagger: A Memory-Hard to Compute, Memory-Easy to Verify Scrypt Alternative. (Not to be confused with DAgger from https://www.cs.cmu.edu/%7Esross1/publications/Ross-AIStats11-NoRegret.pdf).
hashing  algorithm 
19 days ago by tobym
Mining Bitcoin with pencil and paper: 0.67 hashes per day
I decided to see how practical it would be to mine Bitcoin with pencil and paper. It turns out that the SHA-256 algorithm used for mining is pretty simple and can in fact be done by hand. Not surprisingly, the process is extremely slow compared to hardware mining and is entirely impractical. But performing the algorithm manually is a good way to understand exactly how it works.
bitcoin  cryptography  math  hashing  sha256 
4 weeks ago by jchris
Cyan4973/xxHash: Extremely fast non-cryptographic hash algorithm
xxHash is an Extremely fast Hash algorithm, running at RAM speed limits. It successfully completes the SMHasher test suite which evaluates collision, dispersion and randomness qualities of hash functions. Code is highly portable, and hashes are identical on all platforms (little / big endian).
algorithm  hash  opensource  c  sourcecode  github  hashing 
5 weeks ago by tgfrerer
[1710.06993] Improved Search in Hamming Space using Deep Multi-Index Hashing
"Similarity-preserving hashing is a widely-used method for nearest neighbour search in large-scale image retrieval tasks. There has been considerable research on generating efficient image representation via the deep-network-based hashing methods. However, the issue of efficient searching in the deep representation space remains largely unsolved. To this end, we propose a simple yet efficient deep-network-based multi-index hashing method for simultaneously learning the powerful image representation and the efficient searching. To achieve these two goals, we introduce the multi-index hashing (MIH) mechanism into the proposed deep architecture, which divides the binary codes into multiple substrings. Due to the non-uniformly distributed codes will result in inefficiency searching, we add the two balanced constraints at feature-level and instance-level, respectively. Extensive evaluations on several benchmark image retrieval datasets show that the learned balanced binary codes bring dramatic speedups and achieve comparable performance over the existing baselines."
papers  hashing  search  hamming  via:vaguery 
9 weeks ago by arsyed
Consistent Hashing in Clojure
I wrote this post to teach myself consistent hashing - a simple hash family that Akamai's founders came up with. This was originally done to prepare for a talk in my grad algorithms class (I made a horlicks of the talk but whatever). I am going to provide...
clojure  hashing  consistent 
9 weeks ago by hagus

« earlier    

related tags

abuse  algorithm  algorithms  analysis  ann  api  approximation  array  atoms  authentication  bcrypt  bitcoin  blake2  blockchain  c  cache  caching  camping  carmack  categorical  caving  chicken  clojure  compsci  computer  computers  computerscience  computing  consistent-hashing  consistent  contrarianism  cracker  cracking  craig  crypto  cryptocurrency  cryptography  cuckoo  cwrypto  data-structures  data  datastructure  decentralized  demo  design  diff  dimensionality-reduction  dimensionality  discovery  distributed  dummyvariables  duplicate  elixir  embeddings  encoding  encryption  engineering  equality  etsy  explanation  facebook  feature  filetype:pdf  filter  front-end  frontier  fuzzy-match  fuzzy  generator  geometry  github  go-lang  go  gocrack  golang  google  gwern  hamming  hash-function  hash  hashable  hashcat  hashes  haskell  heap  high-dimension  highwayhash  history  howto  ideas  image-processing  image  images  innovation  java  javascript  labelencoding  library  linux  list  lists  loadbalance  loadbalancing  localitysensitivehashing  login  lsh  mac  machine  math  mathematics  md5  media:document  memory  merkle  messenger  metric-space  mihai  minimum-viable  mining  mit  ml  networking  nibble  node.js  novelty  nudes  one-hot  opensource  optimization  p2p  paper  papers  password  passwords  pdf  performance  photodna  photos  php  pictures  pragmatic  privacy  programming  protocol  python  queue  rand-approx  randomized  ratty  recipe  recovery  recsys  reflection  retrieval  revenge-porn  rhetoric  rigorous-crypto  roots  salting  sausage  scalability  scale  science  search  security  sha256  shellcode  shipping  similarity  siphash  sketching  slides  software  soup  sourcecode  spark  spatial  stanford  structures  superminhash  sync  szabo  table  talks  tcs  tools  tree  trees  tutorial  unix  va  visualization  vulnerability  webdevel  whitepapers  wikipedia  yoga  zero-allocation  zobrist 

Copy this bookmark: