QCA/uk: Difference between revisions
(Created page with "У QCA використано типову схему сумісності програмного і двійкового інтерфейсів. У нумерації вер...") |
(Updating to match new version of source page) |
||
Line 54: | Line 54: | ||
== Документація == | == Документація == | ||
<div class="mw-translate-fuzzy"> | |||
Документацію із програмного інтерфейсу у форматі HTML включено до дистрибутива із початковими кодами. | Документацію із програмного інтерфейсу у форматі HTML включено до дистрибутива із початковими кодами. | ||
Документацію до поточної версії можна також [https://api.kde.org/qca/html переглянути в інтернеті]. | Документацію до поточної версії можна також [https://api.kde.org/qca/html переглянути в інтернеті]. | ||
</div> | |||
== Де взяти початковий код? == | == Де взяти початковий код? == | ||
Line 103: | Line 105: | ||
</table> | </table> | ||
<div class="mw-translate-fuzzy"> | |||
Найсвіжіший код можна знайти у модулі «qca» сховища коду Git KDE. Переглянути код можна також [https://commits.kde.org/qca у інтернеті]. | Найсвіжіший код можна знайти у модулі «qca» сховища коду Git KDE. Переглянути код можна також [https://commits.kde.org/qca у інтернеті]. | ||
</div> | |||
''Піктограма «ключі» від команди KDE.'' | ''Піктограма «ключі» від команди KDE.'' |
Revision as of 14:29, 6 September 2020
QCA
Що це таке?
Подібно до схожої за назвою Java Cryptography Architecture, метою створення QCA є надання простого і незалежного від платформи криптографічного програмного інтерфейсу із використанням типів даних та принципів побудови бібліотек Qt. QCA відокремлює програмний інтерфейс від реалізації, використовуючи додатки, які називаються у системі надавачами даних (Provider). Перевагою цієї моделі є те, що вона надає програмам змогу уникати компонування або явної залежності від певної криптографічної бібліотеки. Це уможливлює просту зміну або оновлення криптографічних реалізацій навіть без потреби у повторному збиранні програми! QCA має працювати усюди, де працює Qt, зокрема у Windows, Unix та MacOSX.
Що потрібно для користування цим?
Найсвіжіша версія QCA залежить від Qt 5.6+.
Підтримку яких можливостей передбачено?
- SSL/TLS
- X.509
- OpenPGP
- Синтаксис криптографічних повідомлень (для S/MIME)
- SASL
- PKCS#12
- Смарт-картки та інші сховища даних на флеш-пам'яті
- Захищена пам'ять
- Безпечні псевдовипадкові числа
- RSA/DSA/Діффі-Гелман
- Алгоритми хешування/шифрування/MAC
- Врахування обробки у декілька потоків
- Доступ до кореневих сертифікатів операційної системи
Як це працює?
Програма включає <QtCrypto> і посилання на libqca, яка надає «програмний інтерфейс — обгортку» та завантажувач додатків. Функціональні можливості криптографії визначаються під час роботи програми, а додатки завантажуються з підтеки «crypto» шляхів бібліотек Qt.
Яким є план розробки?
Базова бібліотека QCA вважається майже завершеною. Наступна розробка може включити OCSP, керування сертифікатами спільного користування та удосконалення програмного інтерфейсу додатків. Втім, зараз плану розробки базової бібліотеки зараз немає. Крім того, продовжуватиметься робота над різноманітними додатками з метою доведення їх до придатного для випуску стану.
Сумісність
У QCA використано типову схему сумісності програмного і двійкового інтерфейсів. У нумерації версій використовується формат «основна версія.проміжна версія.модифікація». Основні версії QCA можуть бути несумісними одна з одною, проміжні версії є зворотно сумісними із основною версією, а версії-модифікації сумісні із іншим модифікаціями у межах одної проміжної версії. Це та сама схема, яка використовується у самій бібліотеці Qt.
Документація
Документацію із програмного інтерфейсу у форматі HTML включено до дистрибутива із початковими кодами. Документацію до поточної версії можна також переглянути в інтернеті.
Де взяти початковий код?
Початковий код: qca-2.1.3.tar.gz
У QCA передбачено вбудовану підтримку алгоритмів хешування SHA1 і MD5 та слабкого джерела псевдовипадкових чисел. Щоб виконати будь-які інші криптографічні дії (або використати удосконалені версії вбудованих дій), потрібен відповідний додаток надавача даних. У поточній версії передбачено декілька типових додатків. Ви, якщо хочете, завжди можете написати власні.
У версії QCA 2.1 найсвіжіші версії додатків включено до архіву із кодом основної програми — немає потреби в окремому отриманні цих додатків.
Надавач даних | Можливості | Залежності |
---|---|---|
qca-ossl | TLS, CMS, X.509, RSA, DSA, Діффі-Гелман, PKCS#7, PKCS#12, SHA0, SHA1, SHA224, SHA256, SHA384, SHA512, MD2, MD4, MD5, RIPEMD160, Blowfish, DES, 3DES, AES128, AES192, AES256, CAST5, HMAC(SHA1, MD5, RIPEMD160), PBKDF1(MD2, SHA1), PBKDF2(SHA1) | OpenSSL 0.9.6+ |
qca-cyrus-sasl | SASL | Cyrus SASL2 |
qca-gnupg | OpenPGP | GnuPG 1.x або 2.x (потрібні лише для роботи) |
qca-pkcs11 | PKCS#11 (для смарт-карток) | pkcs11-helper 1.02+ |
qca-wingss | SASL GSSAPI (для Kerberos) | Лише Windows (використовує SSPI) |
qca-logger | Ведення журналу для внутрішніх модулів (з діагностичною метою) | Немає |
Найсвіжіший код можна знайти у модулі «qca» сховища коду Git KDE. Переглянути код можна також у інтернеті.
Піктограма «ключі» від команди KDE.