pkcs11 0.2.3-x86-mingw32 → 0.2.4-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data.tar.gz.sig +2 -0
- data/History.txt +5 -0
- data/README.rdoc +18 -16
- data/Rakefile +14 -3
- data/ext/pk11.c +2 -0
- data/ext/pk11_version.h +1 -1
- data/lib/1.8/pkcs11_ext.so +0 -0
- data/lib/1.9/pkcs11_ext.so +0 -0
- data/lib/2.0/pkcs11_ext.so +0 -0
- data/lib/pkcs11/helper.rb +2 -0
- data/lib/pkcs11/library.rb +3 -0
- data/pkcs11_protect_server/README_PROTECT_SERVER.rdoc +89 -0
- data/test/test_pkcs11_crypt.rb +2 -1
- data/test/test_pkcs11_structs.rb +13 -0
- data/test/test_pkcs11_thread.rb +1 -1
- metadata +51 -27
- metadata.gz.sig +4 -0
data.tar.gz.sig
ADDED
data/History.txt
CHANGED
@@ -1,3 +1,8 @@
|
|
1
|
+
=== 0.2.4 / 2013-04-05
|
2
|
+
|
3
|
+
* Build and package binary x64 version for Windows in addition to x86.
|
4
|
+
* Allow to use big positive numbers (>0x80000000) in 32bit mode (Anton Fedorov)
|
5
|
+
|
1
6
|
=== 0.2.3 / 2012-01-25
|
2
7
|
|
3
8
|
* fix C_WaitForSlotEvent to be a Library- instead of a Slot-method
|
data/README.rdoc
CHANGED
@@ -1,7 +1,9 @@
|
|
1
|
+
{<img src="https://travis-ci.org/larskanis/pkcs11.png?branch=master" alt="Build Status" />}[https://travis-ci.org/larskanis/pkcs11]
|
2
|
+
|
1
3
|
= PKCS #11/Ruby Interface
|
2
4
|
|
3
5
|
* Homepage: http://github.com/larskanis/pkcs11
|
4
|
-
* API documentation: http://pkcs11.rubyforge.org/pkcs11/
|
6
|
+
* API documentation: http://pkcs11.rubyforge.org/pkcs11/frames.html
|
5
7
|
|
6
8
|
This module allows Ruby programs to interface with "RSA Security Inc.
|
7
9
|
PKCS #11 Cryptographic Token Interface (Cryptoki)".
|
@@ -33,7 +35,7 @@ While this seems to be true for C, it shouldn't for Ruby.
|
|
33
35
|
* {PKCS11::Object} represents a key, data or certificate object.
|
34
36
|
* all constants defined in PKCS#11 v2.20 are available in the module {PKCS11}
|
35
37
|
and contain the associated Integer value (CKA_KEY_TYPE, CKK_AES, CKM_SHA_1 etc.)
|
36
|
-
* also all structs are available in the module {PKCS11} as proper ruby classes
|
38
|
+
* also all PKCS#11 v2.20 structs are available in the module {PKCS11} as proper ruby classes
|
37
39
|
({PKCS11::CK_VERSION}, {PKCS11::CK_OTP_PARAMS} etc.)
|
38
40
|
|
39
41
|
=== Example
|
@@ -42,19 +44,19 @@ While this seems to be true for C, it shouldn't for Ruby.
|
|
42
44
|
include PKCS11
|
43
45
|
|
44
46
|
pkcs11 = PKCS11.open("/path/to/pkcs11.so")
|
45
|
-
p pkcs11.info
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
This opens a PKCS#11 library and prints it's information block.
|
55
|
-
Then a {PKCS11::Session} to the first active slot of the device is opened and
|
56
|
-
a login is done on the user account. Now, a 112 bit DES3 key is generated and
|
57
|
-
some plaintext is encrypted with it. A 8-byte zero IV is used. In many cases method parameters
|
47
|
+
p pkcs11.info # => #<PKCS11::CK_INFO cryptokiVersion=...>
|
48
|
+
pkcs11.active_slots.first.open do |session|
|
49
|
+
session.login(:USER, "1234")
|
50
|
+
secret_key = session.generate_key(:DES2_KEY_GEN,
|
51
|
+
:ENCRYPT=>true, :DECRYPT=>true, :SENSITIVE=>true, :TOKEN=>true, :LABEL=>'my key')
|
52
|
+
cryptogram = session.encrypt( {:DES3_CBC_PAD=>"\0"*8}, secret_key, "some plaintext")
|
53
|
+
session.logout
|
54
|
+
end
|
55
|
+
|
56
|
+
This opens a {PKCS11::Library PKCS#11 library} and prints it's {PKCS11::CK_INFO information block}.
|
57
|
+
Then a {PKCS11::Session} to the first {PKCS11::Library#active_slots active slot} of the device is opened and
|
58
|
+
a {PKCS11::Session#login login} is done on the user account. Now, a 112 bit DES3 {PKCS11::Object key object} is generated and
|
59
|
+
some plaintext is {PKCS11::Session#encrypt encrypted} with it. A 8-byte zero IV is used. In many cases method parameters
|
58
60
|
can be Integer (like PKCS11::CKA_LABEL) or, as in the sample, Symbol (:LABEL) which is internally
|
59
61
|
converted.
|
60
62
|
|
@@ -76,7 +78,7 @@ The pkcs11 binding fully supports native, background Ruby threads.
|
|
76
78
|
This of course only applies to Rubinius and Ruby 1.9.x or higher since
|
77
79
|
earlier versions of Ruby do not support native threads.
|
78
80
|
|
79
|
-
|
81
|
+
According to the standard, calling the Cryptoki library from multiple threads simultaneously,
|
80
82
|
requires to open it with flag PKCS11::CKF_OS_LOCKING_OK.
|
81
83
|
Application-supplied synchronization primitives
|
82
84
|
(CreateMutex, DestroyMutex, LockMutex, UnlockMutex) are not supported.
|
data/Rakefile
CHANGED
@@ -26,7 +26,7 @@ hoe = Hoe.spec 'pkcs11' do
|
|
26
26
|
extra_dev_deps << ['yard', '>= 0.6']
|
27
27
|
extra_dev_deps << ['rake-compiler', '>= 0.7']
|
28
28
|
|
29
|
-
self.
|
29
|
+
self.urls = ['http://github.com/larskanis/pkcs11']
|
30
30
|
self.summary = 'PKCS#11 binding for Ruby'
|
31
31
|
self.description = 'This module allows Ruby programs to interface with "RSA Security Inc. PKCS #11 Cryptographic Token Interface (Cryptoki)".'
|
32
32
|
|
@@ -39,12 +39,12 @@ hoe = Hoe.spec 'pkcs11' do
|
|
39
39
|
self.rdoc_locations << "larskanis@rack.rubyforge.org:/var/www/gforge-projects/pkcs11/pkcs11/"
|
40
40
|
end
|
41
41
|
|
42
|
-
ENV['RUBY_CC_VERSION'] ||= '1.8.7:1.9.2'
|
42
|
+
ENV['RUBY_CC_VERSION'] ||= '1.8.7:1.9.3:2.0.0'
|
43
43
|
|
44
44
|
Rake::ExtensionTask.new('pkcs11_ext', hoe.spec) do |ext|
|
45
45
|
ext.ext_dir = 'ext'
|
46
46
|
ext.cross_compile = true # enable cross compilation (requires cross compile toolchain)
|
47
|
-
ext.cross_platform = ['i386-mingw32'] # forces the Windows platform instead of the default one
|
47
|
+
ext.cross_platform = ['i386-mingw32', 'x64-mingw32'] # forces the Windows platform instead of the default one
|
48
48
|
end
|
49
49
|
|
50
50
|
file 'ext/extconf.rb' => ['ext/pk11_struct_def.inc', 'ext/pk11_thread_funcs.c']
|
@@ -66,6 +66,17 @@ end
|
|
66
66
|
file 'ext/pk11_thread_funcs.c' => 'ext/pk11_thread_funcs.h'
|
67
67
|
file 'ext/pk11.h' => 'ext/pk11_thread_funcs.h'
|
68
68
|
|
69
|
+
task 'copy:pkcs11_ext:i386-mingw32:1.9.3' do |t|
|
70
|
+
sh "i686-w64-mingw32-strip -S tmp/i386-mingw32/stage/lib/1.9/pkcs11_ext.so"
|
71
|
+
end
|
72
|
+
task 'copy:pkcs11_ext:i386-mingw32:2.0.0' do |t|
|
73
|
+
sh "i686-w64-mingw32-strip -S tmp/i386-mingw32/stage/lib/2.0/pkcs11_ext.so"
|
74
|
+
end
|
75
|
+
task 'copy:pkcs11_ext:x64-mingw32:2.0.0' do |t|
|
76
|
+
sh "x86_64-w64-mingw32-strip -S tmp/x64-mingw32/stage/lib/2.0/pkcs11_ext.so"
|
77
|
+
end
|
78
|
+
|
79
|
+
|
69
80
|
task :docs_of_vendor_extensions do
|
70
81
|
Dir['pkcs11_*'].each do |dir|
|
71
82
|
chdir(dir) do
|
data/ext/pk11.c
CHANGED
@@ -1376,6 +1376,7 @@ ck_attr_initialize(int argc, VALUE *argv, VALUE self)
|
|
1376
1376
|
attr->ulValueLen = 0;
|
1377
1377
|
break;
|
1378
1378
|
case T_FIXNUM:
|
1379
|
+
case T_BIGNUM:
|
1379
1380
|
attr->pValue = (CK_BYTE_PTR)malloc(sizeof(CK_OBJECT_CLASS));
|
1380
1381
|
*((CK_OBJECT_CLASS*)attr->pValue) = NUM2ULONG(value);
|
1381
1382
|
attr->ulValueLen = sizeof(CK_OBJECT_CLASS);
|
@@ -1531,6 +1532,7 @@ cCK_MECHANISM_set_pParameter(VALUE self, VALUE value)
|
|
1531
1532
|
m->ulParameterLen = RSTRING_LEN(value);
|
1532
1533
|
break;
|
1533
1534
|
case T_FIXNUM:
|
1535
|
+
case T_BIGNUM:
|
1534
1536
|
ulong_val = NUM2ULONG(value);
|
1535
1537
|
value = rb_obj_freeze(rb_str_new((char*)&ulong_val, sizeof(ulong_val)));
|
1536
1538
|
m->pParameter = RSTRING_PTR(value);
|
data/ext/pk11_version.h
CHANGED
data/lib/1.8/pkcs11_ext.so
CHANGED
Binary file
|
data/lib/1.9/pkcs11_ext.so
CHANGED
Binary file
|
Binary file
|
data/lib/pkcs11/helper.rb
CHANGED
data/lib/pkcs11/library.rb
CHANGED
@@ -39,6 +39,9 @@ module PKCS11
|
|
39
39
|
end
|
40
40
|
|
41
41
|
alias unwrapped_C_Initialize C_Initialize
|
42
|
+
# Initialize a pkcs11 dynamic library.
|
43
|
+
#
|
44
|
+
# @param [Hash, CK_C_INITIALIZE_ARGS] args A Hash or CK_C_INITIALIZE_ARGS instance with load params.
|
42
45
|
def C_Initialize(args=nil)
|
43
46
|
case args
|
44
47
|
when Hash
|
@@ -0,0 +1,89 @@
|
|
1
|
+
= PKCS #11/Ruby Interface for Safenet Protect Server HSM
|
2
|
+
|
3
|
+
* Homepage: http://github.com/larskanis/pkcs11
|
4
|
+
* API documentation: http://pkcs11.rubyforge.org/pkcs11/
|
5
|
+
* Safenet[http://www.safenet-inc.com] - Protect Server HSM
|
6
|
+
|
7
|
+
This ruby gem is an add-on to ruby-pkcs11[http://github.com/larskanis/pkcs11] .
|
8
|
+
It allowes to use Protect Server specific extensions, which are beyond the PKCS#11 standard.
|
9
|
+
That means CKA_EXPORT, CKM_DES3_DERIVE_CBC, structs like CK_DES3_CBC_PARAMS, special functions and so on.
|
10
|
+
The module works on the Unix like operating systems and win32.
|
11
|
+
|
12
|
+
== Requirements
|
13
|
+
|
14
|
+
* ProtectServer PTKC-SDK to compile the module
|
15
|
+
* pkcs11 gem installed (use: <tt>gem install pkcs11</tt> )
|
16
|
+
|
17
|
+
== Installation
|
18
|
+
|
19
|
+
gem install pkcs11_protect_server -- --with-protect-server-sdk-dir=/path/to/ETcpsdk
|
20
|
+
|
21
|
+
This installs the ProtectServer-PKCS#11 extension along with pkcs11-gem either by compiling (Unix)
|
22
|
+
or by using the precompiled gem for Win32.
|
23
|
+
|
24
|
+
git clone git://github.com/larskanis/pkcs11.git
|
25
|
+
cd pkcs11_protect_server
|
26
|
+
rake gem PROTECT_SERVER_SDK_DIR=/path/to/ETcpsdk
|
27
|
+
gem install -l pkg/pkcs11_protect_server -- --with-protect-server-sdk-dir=/path/to/ETcpsdk
|
28
|
+
|
29
|
+
Downloads and installs the gem from git source.
|
30
|
+
|
31
|
+
== Usage
|
32
|
+
|
33
|
+
Open the software emulation library and login to a session:
|
34
|
+
|
35
|
+
require "rubygems"
|
36
|
+
require "pkcs11_protect_server"
|
37
|
+
|
38
|
+
pkcs11 = PKCS11::ProtectServer::Library.new(:sw)
|
39
|
+
p pkcs11.info
|
40
|
+
session = pkcs11.active_slots.last.open
|
41
|
+
session.login(:USER, "1234")
|
42
|
+
# ... crypto operations
|
43
|
+
session.logout
|
44
|
+
session.close
|
45
|
+
|
46
|
+
{PKCS11::ProtectServer::Library#initialize} tries to find the library file in
|
47
|
+
the standard installation directory on Windows or Linux.
|
48
|
+
|
49
|
+
== Cross compiling for mswin32
|
50
|
+
|
51
|
+
Using rake-compiler a cross compiled pkcs11_protect_server.gem can be build on a linux host for
|
52
|
+
the win32 platform. There are no runtime dependencies to any but the standard Windows DLLs.
|
53
|
+
|
54
|
+
Install mingw32. On a debian based system this should work:
|
55
|
+
|
56
|
+
apt-get install mingw32
|
57
|
+
|
58
|
+
On MacOS X, if you have MacPorts installed:
|
59
|
+
|
60
|
+
port install i386-mingw32-gcc
|
61
|
+
|
62
|
+
Install the rake-compiler:
|
63
|
+
|
64
|
+
gem install rake-compiler
|
65
|
+
|
66
|
+
Download and cross compile ruby for win32:
|
67
|
+
|
68
|
+
rake-compiler cross-ruby VERSION=1.8.7-p352
|
69
|
+
rake-compiler cross-ruby VERSION=1.9.2-p290
|
70
|
+
|
71
|
+
Download and cross compile pkcs11_protect_server for win32:
|
72
|
+
|
73
|
+
rake cross native gem PROTECT_SERVER_SDK_DIR=/path/to/ETcpsdk
|
74
|
+
|
75
|
+
If everything works, there should be pkcs11_protect_server-VERSION-x86-mswin32.gem in the pkg
|
76
|
+
directory.
|
77
|
+
|
78
|
+
|
79
|
+
== ToDo
|
80
|
+
|
81
|
+
* implement ProtectServer specific function calls
|
82
|
+
* implement possibility to use callbacks
|
83
|
+
* add all structs and constants
|
84
|
+
|
85
|
+
== Authors
|
86
|
+
* Lars Kanis <kanis@comcard.de>
|
87
|
+
|
88
|
+
== Copying
|
89
|
+
See MIT-LICENSE included in the package.
|
data/test/test_pkcs11_crypt.rb
CHANGED
@@ -188,7 +188,8 @@ class TestPkcs11Crypt < Test::Unit::TestCase
|
|
188
188
|
new_key2 = session.derive_key( {:DH_PKCS_DERIVE=>key1.pub_key.to_s(2)}, priv_key2,
|
189
189
|
:CLASS=>CKO_SECRET_KEY, :KEY_TYPE=>CKK_AES, :VALUE_LEN=>16, :ENCRYPT=>true, :DECRYPT=>true, :SENSITIVE=>false )
|
190
190
|
|
191
|
-
|
191
|
+
# Some versions of softokn3 use left- and some use rightmost bits of exchanged key
|
192
|
+
assert_operator [new_key1[0,16], new_key1[-16..-1]], :include?, new_key2[:VALUE], 'Exchanged session key should be equal'
|
192
193
|
end
|
193
194
|
|
194
195
|
def test_derive_key2
|
data/test/test_pkcs11_structs.rb
CHANGED
@@ -150,4 +150,17 @@ class TestPkcs11Structs < Test::Unit::TestCase
|
|
150
150
|
assert_equal ["2010", "12", "31"], s.values, 'values of CK_DATE'
|
151
151
|
assert_equal( {:day=>"31", :month=>"12", :year=>"2010"}, s.to_hash, 'CK_DATE as hash' )
|
152
152
|
end
|
153
|
+
|
154
|
+
def test_bignum_attribute
|
155
|
+
bignum = [-1].pack("l_").unpack("L_")[0]
|
156
|
+
attr = CK_ATTRIBUTE.new(CKA_KEY_TYPE, bignum)
|
157
|
+
assert_equal bignum, attr.value, "The bignum value should set"
|
158
|
+
end
|
159
|
+
|
160
|
+
def test_bignum_mechanism
|
161
|
+
bignum = [-1].pack("l_").unpack("L_")[0]
|
162
|
+
mech = CK_MECHANISM.new(bignum-1, bignum)
|
163
|
+
assert_equal bignum-1, mech.mechanism, "The bignum mechanism should set"
|
164
|
+
assert_equal [-1].pack("l_"), mech.pParameter, "The bignum parameter is retrieved as String"
|
165
|
+
end
|
153
166
|
end
|
data/test/test_pkcs11_thread.rb
CHANGED
@@ -35,7 +35,7 @@ class TestPkcs11Thread < Test::Unit::TestCase
|
|
35
35
|
}
|
36
36
|
# This should take some seconds:
|
37
37
|
pub_key, priv_key = session.generate_key_pair(:RSA_PKCS_KEY_PAIR_GEN,
|
38
|
-
{:MODULUS_BITS=>
|
38
|
+
{:MODULUS_BITS=>2048, :PUBLIC_EXPONENT=>[3].pack("N"), :TOKEN=>false},
|
39
39
|
{})
|
40
40
|
th.kill
|
41
41
|
assert_operator count, :>, 10, "The second thread should count further concurrent to the key generation"
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pkcs11
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 31
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 2
|
9
|
-
-
|
10
|
-
version: 0.2.
|
9
|
+
- 4
|
10
|
+
version: 0.2.4
|
11
11
|
platform: x86-mingw32
|
12
12
|
authors:
|
13
13
|
- Ryosuke Kutsuna
|
@@ -15,53 +15,74 @@ authors:
|
|
15
15
|
- Lars Kanis
|
16
16
|
autorequire:
|
17
17
|
bindir: bin
|
18
|
-
cert_chain:
|
18
|
+
cert_chain:
|
19
|
+
- |
|
20
|
+
-----BEGIN CERTIFICATE-----
|
21
|
+
MIIDPDCCAiSgAwIBAgIBADANBgkqhkiG9w0BAQUFADBEMQ0wCwYDVQQDDARsYXJz
|
22
|
+
MR8wHQYKCZImiZPyLGQBGRYPZ3JlaXotcmVpbnNkb3JmMRIwEAYKCZImiZPyLGQB
|
23
|
+
GRYCZGUwHhcNMTMwMzExMjAyMjIyWhcNMTQwMzExMjAyMjIyWjBEMQ0wCwYDVQQD
|
24
|
+
DARsYXJzMR8wHQYKCZImiZPyLGQBGRYPZ3JlaXotcmVpbnNkb3JmMRIwEAYKCZIm
|
25
|
+
iZPyLGQBGRYCZGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZb4Uv
|
26
|
+
RFJfRu/VEWiy3psh2jinETjiuBrL0NeRFGf8H7iU9+gx/DI/FFhfHGLrDeIskrJx
|
27
|
+
YIWDMmEjVO10UUdj7wu4ZhmU++0Cd7Kq9/TyP/shIP3IjqHjVLCnJ3P6f1cl5rxZ
|
28
|
+
gqo+d3BAoDrmPk0rtaf6QopwUw9RBiF8V4HqvpiY+ruJotP5UQDP4/lVOKvA8PI9
|
29
|
+
P0GmVbFBrbc7Zt5h78N3UyOK0u+nvOC23BvyHXzCtcFsXCoEkt+Wwh0RFqVZdnjM
|
30
|
+
LMO2vULHKKHDdX54K/sbVCj9pN9h1aotNzrEyo55zxn0G9PHg/G3P8nMvAXPkUTe
|
31
|
+
brhXrfCwWRvOXA4TAgMBAAGjOTA3MAsGA1UdDwQEAwIEsDAJBgNVHRMEAjAAMB0G
|
32
|
+
A1UdDgQWBBRAHK81igrXodaDj8a8/BIKsaZrETANBgkqhkiG9w0BAQUFAAOCAQEA
|
33
|
+
Iswhcol3ytXthaUH3k5LopZ09viZrZHzAw0QleI3Opl/9QEGJ2BPV9+93iC0OrNL
|
34
|
+
hmnxig6vKK1EeJ5PHXJ8hOI3nTZBrOmQcEXNBqyToP1FHMWZqwZ8wiBPXtiCqDBR
|
35
|
+
ePQ25J9xFNzQ1ItgzNSpx5cs67QNKrx5woocoBHD6kStFbshZPJx4axl3GbUFQd5
|
36
|
+
H//3YdPQOH3jaVeUXhS+pz/gfbx8fhFAtsQ+855A3HO7g2ZRIg/atAp/0MFyn5s5
|
37
|
+
0rq+VHOIPyvxF5khT0mYAcNmZTC8z1yPsqdgwfYNDjsSWwiIRSPUSmJRvfjM8hsW
|
38
|
+
mMFp4kPUHbWOqCp2mz9gCA==
|
39
|
+
-----END CERTIFICATE-----
|
19
40
|
|
20
|
-
date:
|
41
|
+
date: 2013-04-05 00:00:00 Z
|
21
42
|
dependencies:
|
22
43
|
- !ruby/object:Gem::Dependency
|
23
|
-
name:
|
44
|
+
name: rdoc
|
24
45
|
prerelease: false
|
25
46
|
requirement: &id001 !ruby/object:Gem::Requirement
|
26
47
|
none: false
|
27
48
|
requirements:
|
28
|
-
- -
|
49
|
+
- - ~>
|
29
50
|
- !ruby/object:Gem::Version
|
30
|
-
hash:
|
51
|
+
hash: 19
|
31
52
|
segments:
|
32
|
-
-
|
33
|
-
-
|
34
|
-
version: "
|
53
|
+
- 3
|
54
|
+
- 10
|
55
|
+
version: "3.10"
|
35
56
|
type: :development
|
36
57
|
version_requirements: *id001
|
37
58
|
- !ruby/object:Gem::Dependency
|
38
|
-
name:
|
59
|
+
name: yard
|
39
60
|
prerelease: false
|
40
61
|
requirement: &id002 !ruby/object:Gem::Requirement
|
41
62
|
none: false
|
42
63
|
requirements:
|
43
64
|
- - ">="
|
44
65
|
- !ruby/object:Gem::Version
|
45
|
-
hash:
|
66
|
+
hash: 7
|
46
67
|
segments:
|
47
68
|
- 0
|
48
|
-
-
|
49
|
-
version: "0.
|
69
|
+
- 6
|
70
|
+
version: "0.6"
|
50
71
|
type: :development
|
51
72
|
version_requirements: *id002
|
52
73
|
- !ruby/object:Gem::Dependency
|
53
|
-
name:
|
74
|
+
name: rake-compiler
|
54
75
|
prerelease: false
|
55
76
|
requirement: &id003 !ruby/object:Gem::Requirement
|
56
77
|
none: false
|
57
78
|
requirements:
|
58
|
-
- -
|
79
|
+
- - ">="
|
59
80
|
- !ruby/object:Gem::Version
|
60
|
-
hash:
|
81
|
+
hash: 5
|
61
82
|
segments:
|
62
|
-
-
|
63
|
-
-
|
64
|
-
version: "
|
83
|
+
- 0
|
84
|
+
- 7
|
85
|
+
version: "0.7"
|
65
86
|
type: :development
|
66
87
|
version_requirements: *id003
|
67
88
|
- !ruby/object:Gem::Dependency
|
@@ -72,11 +93,11 @@ dependencies:
|
|
72
93
|
requirements:
|
73
94
|
- - ~>
|
74
95
|
- !ruby/object:Gem::Version
|
75
|
-
hash:
|
96
|
+
hash: 7
|
76
97
|
segments:
|
77
|
-
-
|
78
|
-
-
|
79
|
-
version: "
|
98
|
+
- 3
|
99
|
+
- 0
|
100
|
+
version: "3.0"
|
80
101
|
type: :development
|
81
102
|
version_requirements: *id004
|
82
103
|
description: "This module allows Ruby programs to interface with \"RSA Security Inc. PKCS #11 Cryptographic Token Interface (Cryptoki)\"."
|
@@ -91,8 +112,9 @@ extensions: []
|
|
91
112
|
extra_rdoc_files:
|
92
113
|
- History.txt
|
93
114
|
- Manifest.txt
|
94
|
-
- pkcs11_protect_server/Manifest.txt
|
95
115
|
- README.rdoc
|
116
|
+
- pkcs11_protect_server/Manifest.txt
|
117
|
+
- pkcs11_protect_server/README_PROTECT_SERVER.rdoc
|
96
118
|
- ext/pk11.c
|
97
119
|
files:
|
98
120
|
- .autotest
|
@@ -145,8 +167,10 @@ files:
|
|
145
167
|
- ext/pk11_thread_funcs.h
|
146
168
|
- ext/pk11_thread_funcs.c
|
147
169
|
- pkcs11_protect_server/Manifest.txt
|
170
|
+
- pkcs11_protect_server/README_PROTECT_SERVER.rdoc
|
148
171
|
- lib/1.8/pkcs11_ext.so
|
149
172
|
- lib/1.9/pkcs11_ext.so
|
173
|
+
- lib/2.0/pkcs11_ext.so
|
150
174
|
homepage: http://github.com/larskanis/pkcs11
|
151
175
|
licenses: []
|
152
176
|
|
@@ -177,7 +201,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
177
201
|
requirements: []
|
178
202
|
|
179
203
|
rubyforge_project: pkcs11
|
180
|
-
rubygems_version: 1.8.
|
204
|
+
rubygems_version: 1.8.17
|
181
205
|
signing_key:
|
182
206
|
specification_version: 3
|
183
207
|
summary: PKCS#11 binding for Ruby
|
metadata.gz.sig
ADDED