GithubHelp home page GithubHelp logo

stang / encryptor Goto Github PK

View Code? Open in Web Editor NEW

This project forked from macpaw/encryptor

0.0 1.0 0.0 300 KB

Encryption engine powering Encrypto app

Home Page: http://macpaw.com/encrypto

License: Apache License 2.0

Ruby 0.42% Objective-C 99.58%

encryptor's Introduction

ENCryptor

Overview

ENCryptor is an engine powering our awesome Encrypto app, now open source.

Installation

Preferred way of installation is through CocoaPods

pod 'ENCryptor', :git => 'https://github.com/MacPaw/ENCryptor.git'

Otherwise, you can build the project and copy ENCryptor.framework to your project.

Usage

Opening (viewing hint and preview, checking password)

self.archiveOpener = [ENArchiveOpener openerWithArchiveURL:...];
self.archiveOpener.delegate = self;

NSString *hint = self.archiveOpener.hint;
...
if ([self.archiveOpener checkPassword:password]) {
	NSImage *preview = self.archiveOpener.preview;
}

Encrypting

self.encryptor = [ENEncryptor encryptorWithSourceURLs:@[...]];
self.encryptor.delegate = self;

[self.encryptor encryptWithPassword:password hint:hint preview:preview];
...
- (void)encryptor:(ENEncryptor *)encryptor didFinishWithResultURL:(NSURL *)resultURL {
// resultURL now contains resulting .crypto file located somewhere in temporary directory
}

Decrypting

self.decryptor = [ENDecryptor decryptorWithArchiveURL:resolvedInputURL];
self.decryptor.delegate = self;

[self.decryptor decryptWithPassword:password];
...
- (void)decryptor:(ENDecryptor *)decryptor didFinishWithResultURL:(NSURL *)resultURL {
// resultURL now contains unarchived file or directory somewhere in temporary directory
}

Demo

ENCryptor comes bundled with encrypto-cli as demo, also available for installation through homebrew tap

brew tap macpaw/taps
brew update
brew install encrypto-cli
$ encrypto-cli
usage: encrypto-cli encrypt <input> --output <output folder>
                    decrypt <input> --output <output folder>
                    preview <input>

Resources

Crypto File Structure

License

ENCryptor is released under Apache License 2.0 License. See LICENSE file for details.

encryptor's People

Contributors

pawlowskialex 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.