Giter Site home page Giter Site logo

durant / apple-corecrypto Goto Github PK

View Code? Open in Web Editor NEW

This project forked from samdmarshall/apple-corecrypto

0.0 2.0 0.0 46.98 MB

mirror of apple's corecrypto implementation

License: Other

C 18.30% C++ 0.24% Objective-C 2.00% Roff 0.05% Assembly 3.66% POV-Ray SDL 75.03% Perl 0.24% Shell 0.17% PHP 0.14% SourcePawn 0.11% Python 0.02% Ruby 0.03%

apple-corecrypto's Introduction

This is the corecrypto (cc) project.

The main goal is to provide low level fast math routines and crypto APIs which
can be used in various environments (Kernel, bootloader, userspace, etc.).  It
is an explicit goal to minimize dependancies between modules and functions so
that clients of this library only end up with the routines they need and
nothing more.

Current corecrypto consists of the following submodules:

cc           Headers and code common to all of the modules
ccasn1       ASN.1 typeid constants and ccoid definition.
cccurve25519 Curve25519 Diffie-Hellman routines.
ccder        DER encoding decoding support
ccn          Math on vectors of n cc_units
cczp         Math over a prime field on vectors of n cc_units
ccz          Variable sized signed integer math routines
ccdrbg       Deterministic Random Byte Generators
ccrng        Random Bytes Generators
ccdh         Diffie-Hellman routines.
cced25519    Ed25519 signature routines.
ccrsa        RSA routines.
ccec         Eliptic Curve Curves, ec specific math and APIs
ccdigest     Digest abstraction layer.
cchmac       HMAC using any ccdigest.
ccpbkdf2     PKKDF2 using any ccdigest.
ccmd2        MD2 digest implementations.
ccmd4        MD4 digest implementations.
ccmd5        MD5 digest implementations.
ccripemd     RIPE-MD digest implementations.
ccsha1       SHA-1 digest implementations.
ccsha2       SHA-2 digest implementations.
ccmode       Symmetric cipher chaining mode interfaces.
ccpad        Symmetric cipher padding code.
ccaes        AES symmetric cipher implementations.
ccblowfish   Blowfish symmetric cipher implementations.
cccast       Cast symmetric cipher implementations.
ccdes        DES and 3DES symmetric cipher implementations.
ccrc2        RC2 symmetric cipher implementations.
ccrc4        RC4 symmetric cipher implementations.
ccperf       Performance testing harness.
cctest       Common utilities for creating self tests and XCunit tests.

Each module has the following subdirectories:
    corecrypto     headers for this module
    src            sources for this module
    doc            documentation, references, etc.
    xcunit         XCTest based unit tests for this module.
    crypto_tests   sources for executable tests for this module
    test_vectors   test vectors for this module
    tools          sources for random helper tools.

The following subdirections don't follow the module layout yet:

corecrypto_kext   Supporting files for kernel extension build and fips support.
corecrypto_dylib  Supporting files for userspace shared lib build and fips support.

apple-corecrypto's People

Contributors

samdmarshall avatar

Watchers

devin Du 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.