rucades 0.4.0 → 0.5.0
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.
- checksums.yaml +4 -4
- data/README.md +43 -48
- data/lib/rucades/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: fe67a02333856cf1dd3fb169ed461be30bb6e0ae8c8f9d3915eb65845f82dcb0
|
|
4
|
+
data.tar.gz: 15bb72f3f89f1cf77dca8381370ce000508122731bd23a2d939dec8718813c50
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 612a56b778690a019ffc2c9705c8c09da933c0f311def840e10a067562144aa3223895351115dd0d8b94773328f0b4e4d8cf689f3a89d6ff5b9bb4fc7d36d755
|
|
7
|
+
data.tar.gz: 684be66e4bc8eae875a916823e42646ca772b0badf2d671a27fc1454ca19ad7437f1dee5c86ea4f4fe6dd545b5c876df7dfd753cc8e7a6a17a5b15c554595ef4
|
data/README.md
CHANGED
|
@@ -5,73 +5,56 @@
|
|
|
5
5
|
Gem реализует интерфейс, аналогичный [CAdESCOM](https://docs.cryptopro.ru/cades/reference/cadescom)
|
|
6
6
|
и разработан путём повторения функциональности [pycades](https://docs.cryptopro.ru/cades/pycades)
|
|
7
7
|
|
|
8
|
+
[](https://badge.fury.io/rb/rucades)
|
|
8
9
|
[](https://github.com/maxirmx/rucades/actions/workflows/main.yml)
|
|
9
10
|
|
|
10
11
|
## Совместимость
|
|
11
12
|
|
|
12
13
|
Gem тестировался в следующем окружении:
|
|
13
|
-
*
|
|
14
|
+
* Ubuntu 20, 22
|
|
15
|
+
* macOS: macos-latest (arm64), macos-15-intel (amd64)
|
|
14
16
|
* Ruby 2.7.8, 3.1.7, 3.2.11, 3.3.11, 3.4.9, 4.0.5
|
|
15
17
|
|
|
16
18
|
Вероятно, Gem совместим с другими вариантами Linux, однако КриптоПро ЭЦП SDK доступно только для Ubuntu.
|
|
19
|
+
После каждого релиза автоматически выполняется проверка работоспособности Gem на Ubuntu 22 и macOS-latest.
|
|
17
20
|
|
|
18
21
|
## Установка
|
|
19
22
|
|
|
20
|
-
|
|
21
|
-
```
|
|
22
|
-
sudo apt update
|
|
23
|
-
sudo apt install cmake build-essential libboost-all-dev ruby-dev tar git wget libffi-dev
|
|
24
|
-
sudo gem install bundler
|
|
25
|
-
```
|
|
26
|
-
* Скачайте архив с [КриптоПро CSP](https://cryptopro.ru/products/csp/downloads) для Вашей архитектуры, распакуйте его и установите КриптоПро CSP
|
|
27
|
-
Например,
|
|
23
|
+
### Зависимости
|
|
28
24
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
```
|
|
25
|
+
* Ruby и Bundler для Вашей платформы.
|
|
26
|
+
* Средства сборки C/C++ расширений Ruby для Вашей платформы.
|
|
27
|
+
* [CMake](https://cmake.org/) — необходим для сборки native extension.
|
|
28
|
+
* [Boost](https://www.boost.org/) — требуется при использовании КриптоПро ЭЦП SDK версии ниже 2.0.15700; начиная с версии 2.0.15700 Boost не требуется.
|
|
29
|
+
* [КриптоПро CSP](https://cryptopro.ru/products/csp/downloads) и пакет разработки CSP (`cprocsp-devel` или аналогичный пакет для Вашей платформы).
|
|
30
|
+
* [КриптоПро ЭЦП SDK](https://cryptopro.ru/products/cades/downloads) с пакетом CAdES (`cprocsp-pki-cades` или аналогичный пакет для Вашей платформы), версия не ниже 2.0.14071.
|
|
36
31
|
|
|
37
|
-
|
|
38
|
-
```
|
|
39
|
-
wget -O linux-arm64_deb.tgz https://cryptopro.ru/sites/default/files/private/csp/50/11455/linux-arm64_deb.tgz
|
|
40
|
-
tar xvf linux-arm64_deb.tgz
|
|
41
|
-
cd linux-arm64_deb
|
|
42
|
-
sudo ./install.sh
|
|
43
|
-
```
|
|
44
|
-
* Установите пакет cprocsp-devel
|
|
45
|
-
```
|
|
46
|
-
sudo apt install ./lsb-cprocsp-devel_5.0*.deb
|
|
47
|
-
```
|
|
48
|
-
* Скачайте архив с [КриптоПро ЭЦП SDK](https://cryptopro.ru/products/cades/downloads), распакуйте его и установите пакет cprocsp-pki-cades (версия не ниже 2.0.14071)
|
|
32
|
+
Используйте официальные инструкции КриптоПро для выбранной операционной системы и архитектуры:
|
|
49
33
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
sudo apt install ./cprocsp-pki-cades*.deb
|
|
55
|
-
```
|
|
34
|
+
* [документация КриптоПро CSP](https://docs.cryptopro.ru/csp) описывает установку и особенности CSP на поддерживаемых платформах;
|
|
35
|
+
* [страница загрузки КриптоПро CSP](https://cryptopro.ru/products/csp/downloads) содержит дистрибутивы для разных платформ и архитектур;
|
|
36
|
+
* [документация КриптоПро ЭЦП SDK](https://docs.cryptopro.ru/cades/usage) описывает использование и требования SDK;
|
|
37
|
+
* [страница загрузки КриптоПро ЭЦП SDK](https://cryptopro.ru/products/cades/downloads) содержит актуальные пакеты SDK.
|
|
56
38
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
39
|
+
Начиная с КриптоПро CSP 5.0 R3, пакеты CAdES/SDK поставляются в составе основного дистрибутива CSP. Для более ранних версий CSP может потребоваться отдельная установка архива КриптоПро ЭЦП SDK.
|
|
40
|
+
|
|
41
|
+
### Установка опубликованного Gem из RubyGems.org
|
|
42
|
+
|
|
43
|
+
Добавьте Gem в Gemfile Вашего проекта:
|
|
62
44
|
```
|
|
63
|
-
|
|
64
|
-
```
|
|
65
|
-
gem 'rucades', git: 'https://github.com/maxirmx/rucades'
|
|
45
|
+
gem 'rucades'
|
|
66
46
|
```
|
|
67
47
|
|
|
68
|
-
|
|
48
|
+
Затем выполните установку зависимостей проекта обычным для Bundler способом.
|
|
49
|
+
|
|
50
|
+
Для установки без Gemfile можно использовать опубликованный пакет RubyGems.org:
|
|
69
51
|
```
|
|
70
|
-
|
|
52
|
+
gem install rucades
|
|
71
53
|
```
|
|
72
|
-
!!! Компиляция расширения может занять 10-15 минут. Во время компиляции Ruby не выводит никаких сообщений. !!!
|
|
73
54
|
|
|
74
|
-
|
|
55
|
+
Компиляция расширения может занять 10-15 минут. Во время компиляции Ruby может не выводить сообщений.
|
|
56
|
+
|
|
57
|
+
### Проверка установки
|
|
75
58
|
|
|
76
59
|
Скрипт _test.rb_
|
|
77
60
|
```
|
|
@@ -80,7 +63,7 @@ puts "CADES SDK version: #{Rucades::About.new.version.to_s}"
|
|
|
80
63
|
```
|
|
81
64
|
Запуск
|
|
82
65
|
```
|
|
83
|
-
|
|
66
|
+
ruby test.rb
|
|
84
67
|
```
|
|
85
68
|
|
|
86
69
|
Ожидаемый результат (или что-то похожее)
|
|
@@ -88,6 +71,18 @@ bundle exec ruby test.rb
|
|
|
88
71
|
CADES SDK version: 2.0.14892
|
|
89
72
|
```
|
|
90
73
|
|
|
74
|
+
### Установка из исходного кода репозитория
|
|
75
|
+
|
|
76
|
+
Этот вариант нужен для установки unreleased-версии из репозитория, либо для утановки в контроллируем окружении.
|
|
77
|
+
Во втором случае добавть ссылку на commit, оторый считается надёжным.
|
|
78
|
+
|
|
79
|
+
Добавьте в Gemfile Вашего проекта следующую строку:
|
|
80
|
+
```
|
|
81
|
+
gem 'rucades', git: 'https://github.com/maxirmx/rucades'
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Затем выполните установку зависимостей проекта обычным для Bundler способом.
|
|
85
|
+
|
|
91
86
|
## Использование
|
|
92
87
|
|
|
93
88
|
В каталоге samples есть 4 примера, унаследованные от pycades:
|
|
@@ -111,7 +106,7 @@ _для arm64_
|
|
|
111
106
|
|
|
112
107
|
RSpec обеспечивает покрытие тестами всех классов и примерно 70% функций.
|
|
113
108
|
Однако, следует иметь в виду, что тестируются С++ --> Ruby bindings, а не функциональность.
|
|
114
|
-
То есть RSpec проверяет, что функция создалась с нужным
|
|
109
|
+
То есть RSpec проверяет, что функция создалась с нужным именен и параметрами, но не правильность её работы.
|
|
115
110
|
|
|
116
111
|
## Разработка
|
|
117
112
|
|
data/lib/rucades/version.rb
CHANGED