nasa / nasa/CryptoLib

AOS: IV not incrementing between frames

Open
#500 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
169
Forks
67
PR merge metrics
No merged PRs in 30d

Description

I'm using CryptoLib dev branch for interop testing and noticed that Crypto_AOS_ApplySecurity doesn't increment the IV between calls, while Crypto_TM_ApplySecurity does. What I'm seeing:

Frame 1 IV: 000000000000000000000000
Frame 2 IV: 000000000000000000000000
Frame 3 IV: 000000000000000000000000

TM works as expected (IV increments each frame).

Looking at the code, crypto_tm.c has Crypto_increment(sa_ptr->iv, sa_ptr->iv_len) but crypto_aos.c only has Crypto_increment(sa_ptr->arsn, sa_ptr->arsn_len).

Do you know if this is expected?

Minimal repro at: https://gist.github.com/samoht/77f57eb4ced02a1572cc821643829ae9

Environment: dev branch commit 2372efd Ubuntu 24.04, libgcrypt 1.10.3

Thanks!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing Crypto_AOS_ApplySecurity in crypto_aos.c with Crypto_TM_ApplySecurity in crypto_tm.c, focusing on the IV and ARSN increment calls. Run the linked minimal repro on the stated dev commit and verify the expected AOS IV behavior against the relevant SDLS-EP requirements; done means the discrepancy is resolved or its expected behavior is clearly established.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.