riscv / riscv-crypto

RISC-V cryptography extensions standardisation work.
https://wiki.riscv.org/x/MVcF
Creative Commons Attribution 4.0 International
359 stars 83 forks source link

Inconsistent use of "pseudo" #391

Closed ThinkOpenly closed 2 months ago

ThinkOpenly commented 2 months ago

There are a couple of classes of misuse of "pseudo" within the document that conflict with uses elsewhere in the overall RISC-V ISA Specification:

  1. All uses of "pseudo-ops" should instead be "pseudoinstructions" (all in doc/scalar/riscv-crypto-scalar-appx-rationale.adoc):

    of grevi be implemented, which can be invoked via their pseudo-ops.

    The zip and unzip pseudo-ops are specific instances of

    pseudo-ops.

    Note that this makes it even harder to find pseudoinstructions than it already is.

  2. "pseudosomething" sometimes has a space or hyphen separating "pseudo" from the rest of the word. We should pick one usage. I think the most common is with no separation. "pseudorandom" is in the dictionary, for example:

    doc/scalar/riscv-crypto-scalar-zkt.adoc:

    Recall that rev, zip and unzip are pseudo-instructions representing

    doc/vector/riscv-crypto-vector-sail-specifications.adoc:

    descriptions. Instead we have included Sail-like pseudo code. While we have

    For the sake of brevity, our pseudo code does not include the handling of

    In many cases the pseudo code includes

    doc/vector/code-samples/nist-kat/KAT_AES/aesval.html

    "MOVEit Crypto is a compact and fast dynamically-linked library for Windows and Linux. It provides AES encryption, SHA-1 and SHA-2 hashing, and pseudo-random number generation. Both 32-bit and 64-bit versions are available for each operating system. MOVEit Crypto is a member of the MOVEit security and file transfer product family."

    "The Encryption Plus Crypographic Library (EPCL) is a compact and fast encryption library that provides an Application Programming Interface (API) featuring NIST Approved AES encryption, SHA-1 hashing, and pseudo-random generation."

    "MOVEit Crypto is a compact 32-bit dynamically linked library (DLL) that provides encryption services to applications running on Microsoft Windows operating systems. The module provides an API featuring the latest NIST-approved encryption, hashing, and pseudo-random number generation algorithms."

    doc/riscv-crypto-spec.bib

    title = {A Simple Unpredictable Pseudo-Random Number Generator},

    doc/supp/gcm-mode-cmul.adoc

    the GREV[W] instruction with constant 7 (pseudo-instruction rev)

    tools/opcodes-crypto-scalar-both

    # Poll Entropy / Get Noise Pseudo Instructions

    tools/gcc-patch-tasks.adoc

    Additionally, there are two pseudo instructions defined, which alias

    tests/compliance/test-plan-scalar.adoc

    two pseudo-instructions to access them:

ThinkOpenly commented 2 months ago

This repo has been merged into https://github.com/ThinkOpenly/riscv-isa-manual. I submitted a PR addressing these issues there: https://github.com/riscv/riscv-isa-manual/pull/1469. Closing...