Skip to content

danielalves/NitroKeychain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NitroKeychain

Version Platform TravisCI

NitroKeychain is a thin, yet powerful, abstraction layer on top of iOS keychain that provides commonly needed features. NitroKeychain is also thread safe.

There are 3 operations: save, load and delete, as you can see below:

Saving

Objective-C

[TNTKeychain save: @"com.myapp.service.id" 
             data: @"my-ultra-secret-token"];
             
// Or, if you want to make this item available across apps, specify 
// an access group:
[TNTKeychain save: @"com.myapp.service.id" 
             data: @"my-ultra-secret-token"
      accessGroup: @"super-company"];

Swift

TNTKeychain.save("com.myapp.service.id", data: "my-ultra-secret-token")
             
// Or, if you want to make this item available across apps, specify 
// an access group:
TNTKeychain.save("com.myapp.service.id", 
                  data: "my-ultra-secret-token", 
                  accessGroup: "super-company")
  • All keychain items are stored using the kSecClassGenericPassword Keychain Item class.
  • data can be any value compatible with NSKeyedArchiver/NSKeyedUnarchiver.
  • If there is already some data associated with a keychain item ID, it will be updated.

Loading

Objective-C

NSString *token = [TNTKeychain load: @"com.myapp.service.id"];
NSLog( @"%@", token );
  • load will return nil if no keychain item is found with such id.

Swift

let token = TNTKeychain.load("com.myapp.service.id")
print(token)

Deleting

Objective-C

[TNTKeychain delete: @"com.myapp.service.id"];
  • delete does nothing if no keychain item is found with such id.

Swift

TNTKeychain.delete("com.myapp.service.id")

Simple as that 👍

Requirements

iOS 6.0 or higher, ARC only

Installation

NitroKeychain is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'NitroKeychain'

Authors

License

NitroKeychain is available under the MIT license. See the LICENSE file for more info.

About

Apple's keychain without pain

Resources

License

Stars

Watchers

Forks

Packages

No packages published