OWASP / OWASP/ASVS

Arabic translation of ASVS v5.0.0

Open
#3,405 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
HTML
Stars
3.6k
Forks
831
Avg merge
7h 55m
Merged PRs (30d)
4

Description

I would like to contribute an Arabic (ar) translation of ASVS 5.0.0.

I searched first: the only previous Arabic work is #1172 / #1174 against v4.0.3
in 2022, and there is no in-progress Arabic effort listed in CONTRIBUTING.md.

Status: complete. All 27 files in 5.0/en are translated, based on the
v5.0.0 branch as CONTRIBUTING.md requires, in a new 5.0/ar folder.

Checks:

  • 5.0/tools/translation_validation/validate_translation.py --translated-folder ar
    reports Overall: PASS, 27/27 files, 0 requirement failures, 0 structural failures
  • markdownlint clean against .markdownlint.jsonc
  • All 345 requirement IDs and levels are byte-identical to the English
  • The PR touches only 5.0/ar/ (28 files, insertions only)

Conventions used, following the merged translations rather than inventing new ones:

  • Chapter/section headings keep the V<n> prefix and translate the name, as in tr/ru/id/ko/pt/fr
  • Table headers translated (| # | الوصف | المستوى |)
  • Glossary keeps the English term as the bolded lookup key with an Arabic gloss,
    following the Russian pattern - it keeps the A-Z ordering meaningful and stays
    searchable for practitioners who know the English terms
  • Terminology inherited from the official 4.0.3 Arabic translation where it exists
    (37 of the 87 glossary terms), except for a handful of entries in 4.0/ar that
    are defective - PSTN and PII carry the wrong term, PBKDF2's definition is
    circular, and "Hibernate" was translated as "hibernation". Those were written fresh
  • Protocol names and acronyms stay in Latin script (TLS, JWT, OAuth, SAML, WebRTC ...)
  • Appendix C's algorithm tables are preserved verbatim - only headings, prose and
    table headers are translated. A transposed digit in an Argon2 parameter would be
    worse than leaving a row in English

One deliberate deviation from the English source: (U+2265) is written as >=
in Appendix C. Amiri has no glyph for U+2265, so it is silently dropped from the
PDF, turning m ≥ 47104 into m 47104 - a minimum reading as an exact value in a
password-hashing parameter table. See the separate issue on RTL PDF generation.

Happy to adjust any of the above - particularly terminology - if the working group
has preferences.

Contributor guide

Open the contributing guide

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

Use the v5.0.0 branch as required by CONTRIBUTING.md and translate the 27 files in 5.0/en into a new 5.0/ar folder. Run 5.0/tools/translation_validation/validate_translation.py --translated-folder ar and markdownlint with .markdownlint.jsonc; done means all 27 files pass structural and requirement checks, with IDs and levels unchanged.

Written by the indexing model from the issue text.

Assessment

Tech stack
markdown
Domain
documentation, localization
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.