Upstream update available: python3-ecdsa 0.19.1 → 0.19.2 #1

Open
opened 2026-04-28 01:49:18 +03:00 by sbelikov · 0 comments
Owner

Upstream update available: python3-ecdsa 0.19.10.19.2

Package

  • Package: python3-ecdsa
  • RPM name: python3-ecdsa
  • Branch: niceos-5.2
  • Current EVR: 0.19.1-1
  • Update class: patch
  • Compare method: python_rpm
  • Update policy: leaf
  • Risk tags: standard

Upstream

Signals

  • Security-relevant keywords detected: True
  • Policy blocked: False
  • Policy reason: -
  • Labels: ai-summary, bot, needs-build, needs-triage, priority/high, security-release, update/patch, upstream-update, upstream/pypi

NiceSOFT AI preliminary analysis

1. Краткий вывод

Предлагается обновление библиотеки python3-ecdsa с версии 0.19.1 до 0.19.2, классифицированное как патч-обновление. Скрипты обнаружения безопасности зафиксировали потенциальные уязвимости, однако конкретные CVE или детали эксплойтов в предоставленных данных отсутствуют. Обновление не блокируется политикой дистрибутива.

2. Риск для НАЙС.ОС

medium.
Библиотека относится к криптографическим инструментам (ECDSA, ECDH, EdDSA), что делает её критичной для безопасности. Наличие флага security_keywords_detected_by_script: True указывает на наличие известных проблем безопасности в upstream-коде новой версии. Поскольку это библиотека чистого Python, риск компрометации системы через уязвимость в алгоритмах шифрования или обработке данных выше, чем у обычных утилит, но ниже, чем у ядра или сетевых стеков.

3. Security/CVE

Во входных данных нет конкретных идентификаторов CVE, описаний уязвимостей или ссылок на advisory. Факт наличия флага security_keywords_detected_by_script: True подтверждает, что скрипты безопасности заметили подозрительные паттерны, но без привязки к конкретному CVE или описанию вектора атаки (например, DoS, утечка ключа, side-channel) оценка невозможна. Требуется ручная проверка changelog или GitHub releases для идентификации конкретной проблемы.

4. ABI/API риск

Данных для оценки ABI/API риска недостаточно.
Хотя версия меняется минимально (0.19.1 -> 0.19.2), изменения в криптографических библиотеках могут затрагивать поведение функций генерации ключей или верификации подписей, что может нарушить совместимость с зависимыми приложениями, если они полагаются на детерминированный выход или специфические исключения. Необходим ручной анализ diff кода или документации по изменениям API.

5. Риск для RPM-сборки

В предоставленных данных отсутствует информация о содержании пакета (файлы, зависимости, патчи).
Неизвестно, требуются ли изменения в секции %build, %install или %check из-за новых зависимостей (например, обязательность gmpy2 для определенных тестов) или изменений в скриптах пост-установки. Также неизвестно, есть ли в upstream новые тесты, которые могут провалиться на текущей конфигурации сборки НАЙС.ОС.

6. Проверки мейнтейнера

  • Найти и изучить официальное объявление об обновлении (Release Notes на GitHub или PyPI) для подтверждения природы security-проблемы.
  • Проверить наличие конкретных CVE в списке изменений upstream.
  • Провести сравнение исходного кода (diff) между 0.19.1 и 0.19.2, чтобы оценить влияние на логику криптографических операций.
  • Проверить файл spec на предмет необходимости обновления BuildRequires или изменений в %check (особенно если используются внешние инструменты вроде openssl для тестов).
  • Убедиться, что обновление не требует смены Python-версии (хотя в описании указано 3.6+, нужно проверить актуальную поддержку в дистрибутиве).

7. Рекомендация

update candidate

8. Основание рекомендации

Обновление классифицировано как патч (patch) и не заблокировано политикой (policy_blocked: False). Несмотря на отсутствие детального описания CVE во входных данных, сам факт обнаружения security-ключевых слов в сочетании с тем, что это библиотека криптографии, требует применения исправлений. Автоматическое обновление не рекомендуется из-за категории security-critical пакета, но статус "кандидат на обновление" позволяет инициировать процесс после ручного подтверждения деталей уязвимости мейнтейнером.

Upstream release notes / description

ECDSA cryptographic signature library (pure python)

Pure-Python ECDSA and ECDH

GitHub CI
Documentation Status
Coverage Status
condition coverage
mutation score
CodeQL
Latest Version
Code style: black

This is an easy-to-use implementation of ECC (Elliptic Curve Cryptography)
with support for ECDSA (Elliptic Curve Digital Signature Algorithm),
EdDSA (Edwards-curve Digital Signature Algorithm) and ECDH
(Elliptic Curve Diffie-Hellman), implemented purely in Python, released under
the MIT license. With this library, you can quickly create key pairs (signing
key and verifying key), sign messages, and verify the signatures. You can
also agree on a shared secret key based on exchanged public keys.
The keys and signatures are very short, making them easy to handle and
incorporate into other protocols.

NOTE: This library should not be used in production settings, see Security for more details.

Features

This library provides key generation, signing, verifying, and shared secret
derivation for five
popular NIST "Suite B" GF(p) (prime field) curves, with key lengths of 192,
224, 256, 384, and 521 bits. The "short names" for these curves, as known by
the OpenSSL tool (openssl ecparam -list_curves), are: prime192v1,
secp224r1, prime256v1, secp384r1, and secp521r1. It includes the
256-bit curve secp256k1 used by Bitcoin. There is also support for the
regular (non-twisted) variants of Brainpool curves from 160 to 512 bits. The
"short names" of those curves are: brainpoolP160r1, brainpoolP192r1,
brainpoolP224r1, brainpoolP256r1, brainpoolP320r1, brainpoolP384r1,
brainpoolP512r1. Few of the small curves from SEC standard are also
included (mainly to speed-up testing of the library), those are:
secp112r1, secp112r2, secp128r1, and secp160r1.
Key generation, siging and verifying is also supported for Ed25519 and
Ed448 curves.
No other curves are included, but it is not too hard to add support for more
curves over prime fields.

Dependencies

This library uses only Python and the 'six' package. It is compatible with
Python 2.6, 2.7, and 3.6+. It also supports execution on alternative
implementations like pypy and pypy3.

If gmpy2 or gmpy is installed, they will be used for faster arithmetic.
Either of them can be installed after this library is installed,
python-ecdsa will detect their presence on start-up and use them
automatically.
You should prefer gmpy2 on Python3 for optimal performance.

To run the OpenSSL compatibility tests, the 'openssl' tool must be in your
PATH. This release has been tested successfully against OpenSSL 0.9.8o,
1.0.0a, 1.0.2f, 1.1.1d and 3.0.1 (among others).

Installation

This library is available on PyPI, it's recommended to install it using pip:

pip install ecdsa

In case higher performance is wanted and using native code is not a problem,
it's possible to specify installation together with gmpy2:

pip install ecdsa[gmpy2]

NiceOS maintainer checklist

  • Confirm that the detected version is a stable upstream release.
  • Check upstream changelog for security fixes, ABI/API changes and build-system changes.
  • Check ABI/API compatibility and reverse dependencies.
  • Download source into NiceOS lookaside storage.
  • Update Version and related fields in SPECS/*.spec only if policy allows it.
  • Regenerate SOURCES/sources.lock.json, manifests, metadata and SBOM.
  • Build SRPM/RPM in a clean NiceOS buildroot.
  • Run package smoke tests.
  • Link PR/build logs and close this issue after update or triage.

Bot metadata

  • Tool: niceos_upstream_monitor.py 1.4
  • Generated at: 2026-04-27T22:49:17Z
<!-- niceos-upstream-monitor:fingerprint=upstream-update:python3-ecdsa:0.19.2 --> <!-- niceos-upstream-monitor:package=python3-ecdsa --> <!-- niceos-upstream-monitor:current=0.19.1 --> <!-- niceos-upstream-monitor:latest=0.19.2 --> # Upstream update available: `python3-ecdsa` `0.19.1` → `0.19.2` ## Package - Package: `python3-ecdsa` - RPM name: `python3-ecdsa` - Branch: `niceos-5.2` - Current EVR: `0.19.1-1` - Update class: `patch` - Compare method: `python_rpm` - Update policy: `leaf` - Risk tags: `standard` ## Upstream - Upstream type: `pypi` - Upstream project: `-` - Upstream URL: https://files.pythonhosted.org/packages/c0/1f/924e3caae75f471eae4b26bd13b698f6af2c44279f67af317439c2f4c46a/ecdsa-0.19.1.tar.gz - Detected version: `0.19.2` - Tag/release: `0.19.2` - Source: `pypi_json` - Published: `2026-03-26T09:58:17.675780Z` - Release URL: https://pypi.org/project/ecdsa/ - Source URL: https://files.pythonhosted.org/packages/25/ca/8de7744cb3bc966c85430ca2d0fcaeea872507c6a4cf6e007f7fe269ed9d/ecdsa-0.19.2.tar.gz - Pre-release: `False` ## Signals - Security-relevant keywords detected: `True` - Policy blocked: `False` - Policy reason: `-` - Labels: `ai-summary, bot, needs-build, needs-triage, priority/high, security-release, update/patch, upstream-update, upstream/pypi` ## NiceSOFT AI preliminary analysis ### 1. Краткий вывод Предлагается обновление библиотеки `python3-ecdsa` с версии 0.19.1 до 0.19.2, классифицированное как патч-обновление. Скрипты обнаружения безопасности зафиксировали потенциальные уязвимости, однако конкретные CVE или детали эксплойтов в предоставленных данных отсутствуют. Обновление не блокируется политикой дистрибутива. ### 2. Риск для НАЙС.ОС **medium**. Библиотека относится к криптографическим инструментам (ECDSA, ECDH, EdDSA), что делает её критичной для безопасности. Наличие флага `security_keywords_detected_by_script: True` указывает на наличие известных проблем безопасности в upstream-коде новой версии. Поскольку это библиотека чистого Python, риск компрометации системы через уязвимость в алгоритмах шифрования или обработке данных выше, чем у обычных утилит, но ниже, чем у ядра или сетевых стеков. ### 3. Security/CVE Во входных данных **нет** конкретных идентификаторов CVE, описаний уязвимостей или ссылок на advisory. Факт наличия флага `security_keywords_detected_by_script: True` подтверждает, что скрипты безопасности заметили подозрительные паттерны, но без привязки к конкретному CVE или описанию вектора атаки (например, DoS, утечка ключа, side-channel) оценка невозможна. Требуется ручная проверка changelog или GitHub releases для идентификации конкретной проблемы. ### 4. ABI/API риск Данных для оценки ABI/API риска недостаточно. Хотя версия меняется минимально (0.19.1 -> 0.19.2), изменения в криптографических библиотеках могут затрагивать поведение функций генерации ключей или верификации подписей, что может нарушить совместимость с зависимыми приложениями, если они полагаются на детерминированный выход или специфические исключения. Необходим ручной анализ diff кода или документации по изменениям API. ### 5. Риск для RPM-сборки В предоставленных данных отсутствует информация о содержании пакета (файлы, зависимости, патчи). Неизвестно, требуются ли изменения в секции `%build`, `%install` или `%check` из-за новых зависимостей (например, обязательность `gmpy2` для определенных тестов) или изменений в скриптах пост-установки. Также неизвестно, есть ли в upstream новые тесты, которые могут провалиться на текущей конфигурации сборки НАЙС.ОС. ### 6. Проверки мейнтейнера - [ ] Найти и изучить официальное объявление об обновлении (Release Notes на GitHub или PyPI) для подтверждения природы security-проблемы. - [ ] Проверить наличие конкретных CVE в списке изменений upstream. - [ ] Провести сравнение исходного кода (diff) между 0.19.1 и 0.19.2, чтобы оценить влияние на логику криптографических операций. - [ ] Проверить файл `spec` на предмет необходимости обновления `BuildRequires` или изменений в `%check` (особенно если используются внешние инструменты вроде `openssl` для тестов). - [ ] Убедиться, что обновление не требует смены Python-версии (хотя в описании указано 3.6+, нужно проверить актуальную поддержку в дистрибутиве). ### 7. Рекомендация update candidate ### 8. Основание рекомендации Обновление классифицировано как патч (`patch`) и не заблокировано политикой (`policy_blocked: False`). Несмотря на отсутствие детального описания CVE во входных данных, сам факт обнаружения security-ключевых слов в сочетании с тем, что это библиотека криптографии, требует применения исправлений. Автоматическое обновление не рекомендуется из-за категории security-critical пакета, но статус "кандидат на обновление" позволяет инициировать процесс после ручного подтверждения деталей уязвимости мейнтейнером. ## Upstream release notes / description ECDSA cryptographic signature library (pure python) # Pure-Python ECDSA and ECDH [![GitHub CI](https://github.com/tlsfuzzer/python-ecdsa/actions/workflows/ci.yml/badge.svg)](https://github.com/tlsfuzzer/python-ecdsa/actions/workflows/ci.yml) [![Documentation Status](https://readthedocs.org/projects/ecdsa/badge/?version=latest)](https://ecdsa.readthedocs.io/en/latest/?badge=latest) [![Coverage Status](https://coveralls.io/repos/github/tlsfuzzer/python-ecdsa/badge.svg?branch=master)](https://coveralls.io/github/tlsfuzzer/python-ecdsa?branch=master) ![condition coverage](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/tomato42/9b6ca1f3410207fbeca785a178781651/raw/python-ecdsa-condition-coverage.json) ![mutation score](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/tomato42/9b6ca1f3410207fbeca785a178781651/raw/python-ecdsa-mutation-score.json) [![CodeQL](https://github.com/tlsfuzzer/python-ecdsa/actions/workflows/codeql.yml/badge.svg)](https://github.com/tlsfuzzer/python-ecdsa/actions/workflows/codeql.yml) [![Latest Version](https://img.shields.io/pypi/v/ecdsa.svg?style=flat)](https://pypi.python.org/pypi/ecdsa/) ![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg?style=flat) This is an easy-to-use implementation of ECC (Elliptic Curve Cryptography) with support for ECDSA (Elliptic Curve Digital Signature Algorithm), EdDSA (Edwards-curve Digital Signature Algorithm) and ECDH (Elliptic Curve Diffie-Hellman), implemented purely in Python, released under the MIT license. With this library, you can quickly create key pairs (signing key and verifying key), sign messages, and verify the signatures. You can also agree on a shared secret key based on exchanged public keys. The keys and signatures are very short, making them easy to handle and incorporate into other protocols. **NOTE: This library should not be used in production settings, see [Security](#Security) for more details.** ## Features This library provides key generation, signing, verifying, and shared secret derivation for five popular NIST "Suite B" GF(p) (_prime field_) curves, with key lengths of 192, 224, 256, 384, and 521 bits. The "short names" for these curves, as known by the OpenSSL tool (`openssl ecparam -list_curves`), are: `prime192v1`, `secp224r1`, `prime256v1`, `secp384r1`, and `secp521r1`. It includes the 256-bit curve `secp256k1` used by Bitcoin. There is also support for the regular (non-twisted) variants of Brainpool curves from 160 to 512 bits. The "short names" of those curves are: `brainpoolP160r1`, `brainpoolP192r1`, `brainpoolP224r1`, `brainpoolP256r1`, `brainpoolP320r1`, `brainpoolP384r1`, `brainpoolP512r1`. Few of the small curves from SEC standard are also included (mainly to speed-up testing of the library), those are: `secp112r1`, `secp112r2`, `secp128r1`, and `secp160r1`. Key generation, siging and verifying is also supported for Ed25519 and Ed448 curves. No other curves are included, but it is not too hard to add support for more curves over prime fields. ## Dependencies This library uses only Python and the 'six' package. It is compatible with Python 2.6, 2.7, and 3.6+. It also supports execution on alternative implementations like pypy and pypy3. If `gmpy2` or `gmpy` is installed, they will be used for faster arithmetic. Either of them can be installed after this library is installed, `python-ecdsa` will detect their presence on start-up and use them automatically. You should prefer `gmpy2` on Python3 for optimal performance. To run the OpenSSL compatibility tests, the 'openssl' tool must be in your `PATH`. This release has been tested successfully against OpenSSL 0.9.8o, 1.0.0a, 1.0.2f, 1.1.1d and 3.0.1 (among others). ## Installation This library is available on PyPI, it's recommended to install it using `pip`: ``` pip install ecdsa ``` In case higher performance is wanted and using native code is not a problem, it's possible to specify installation together with `gmpy2`: ``` pip install ecdsa[gmpy2] ``` ## NiceOS maintainer checklist - [ ] Confirm that the detected version is a stable upstream release. - [ ] Check upstream changelog for security fixes, ABI/API changes and build-system changes. - [ ] Check ABI/API compatibility and reverse dependencies. - [ ] Download source into NiceOS lookaside storage. - [ ] Update `Version` and related fields in `SPECS/*.spec` only if policy allows it. - [ ] Regenerate `SOURCES/sources.lock.json`, manifests, metadata and SBOM. - [ ] Build SRPM/RPM in a clean NiceOS buildroot. - [ ] Run package smoke tests. - [ ] Link PR/build logs and close this issue after update or triage. ## Bot metadata - Tool: `niceos_upstream_monitor.py 1.4` - Generated at: `2026-04-27T22:49:17Z`
Sign in to join this conversation.
No description provided.