GithubHelp home page GithubHelp logo

skeinfish's Introduction

SkeinFish

[Build status] (https://ci.appveyor.com/project/nitrocaster/skeinfish/branch/master)

SkeinFish is an implementation of Skein and Threefish, with a focus on speed and completeness. Skein is a general purpose hash algorithm and Threefish is a general purpose block cipher. Both were designed by Bruce Schneier, among others. This is an implementation of both algorithms in C#.

Quick and Dirty usage guide

First, add a reference to SkeinFish.dll to your project. Next, use as such:

    using SkeinFish;
    
    static byte[] hash_skein(byte[] input)
    {
        // (state_size, output_size)
        Skein skein = new Skein(512, 512);
        return skein.ComputeHash(input, 0, input.Length);
    }

Using Threefish

The Threefish block cipher is also implemented as part of SkeinFish (hence the name). To use it, simply instantiate a Threefish object and use it as you would any other cipher in the .NET library. It supports all encryption modes except CTS. All padding modes are supported.

Credits

This repository was originally hosted on Google Code by [email protected] under MIT License.

skeinfish's People

Contributors

arcticecho avatar danucalovj avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.