Code Monkey home page Code Monkey logo

labview_hashlib's Introduction

labview_hashlib

Secure hash and message digest algorithms writen in plain LabVIEW designed primarily for web application authentication.

LabVIEW library includes: SHA-256, SCRAM-SHA-256, PBKDF2-SHA-256, HMAC-SHA-256 and Base64 encoding/decoding.

Releases

To install, download and run the VI Package (*.vip) using the VI Package Manager which is installed with LabVIEW.

VI Package Version LabVIEW Source Zip
rcpacini_hashlib-0.1.0.4.vip 0.1.0.4 LV2019 rcpacini_hashlib-0.1.0.4.zip

This VI Package installs to the <LABVIEW>\user.lib\_rcpacini\hashlib directory and is available on the diagram palette Functions > User Libraries > rcpacini > Hashlib.

Example

Once the VI Package is installed, open the example VI located at <LABVIEW>\examples\rcpacini\hashlib\hashlib_example.vit.

Hashlib gif

Algorithms

  • SCRAM-SHA-256 - RFC 5802 Secure authentication mechanism (client first and final messages)
  • PBKDF2-SHA-256 - RFC 2898C Salted password-based cryptography
  • HMAC-SHA-256 - RFC 2104 Keyed hashing
  • SHA-256 - RFC 4634 256 bit hash
  • Base64 - RFC 4648 Encode/decode

Refer to the specifications at https://tools.ietf.org/html/rfcXXXX .

Acronyms & Abbreviations

Key Name
SCRAM Salted Challenge Response Authentication Mechanism
HMAC Keyed-Hashing for Message Authentication
PBKDF2 Password-Based Cryptography Specification Version 2.0
SHA Secure Hash Algorithm

Development

The following sections are instructions on how to rebuild and test this package.

Build

To rebuild the Source Zip, open the hashlib\hashlib.lvproj (LabVIEW Project), navigate to the Build Specifications > Hashlib Source properties, under Zip Information update the Destination filename version and press Build.

The Source Zip is output to releases/rcpacini_hashlib-X.X.X.X.zip

To rebuild the VI Package, open the hashlib\hashlib.vipb (VI Package Build) in VI Package Manager, update the version information and press Build.

The VI Package is output to releases/rcpacini_hashlib-X.X.X.X.vip

Test

Once the VI Package is installed to Functions > User Libraries > rcpacini > Hashlib, open the tests\test_hashlib.lvproj and run the test_all.vi. If successful, the all_passed boolean should return True.

Support

Submit a ticket for bug fixes or feature requests.

-Ryan

labview_hashlib's People

Contributors

rcpacini avatar

Watchers

 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.