<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libcrypto/bn/bn_local.h, branch OPENBSD_7_9_BASE</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9_BASE</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9_BASE'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2026-01-23T08:29:04+00:00</updated>
<entry>
<title>bn_const: add RFC 7919 primes</title>
<updated>2026-01-23T08:29:04+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2026-01-23T08:29:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=87d5ceb7c77925e0cffb6fb9e902a9c722af86c9'/>
<id>urn:sha1:87d5ceb7c77925e0cffb6fb9e902a9c722af86c9</id>
<content type='text'>
There is no intention to expose these via public API or to use them in TLS.
For now these will only be used for short-circuiting pointless expensive
computations in DH_check().

ok beck
</content>
</entry>
<entry>
<title>libcrypto: make most of the BN_* macro pollution internal</title>
<updated>2025-12-05T14:12:32+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2025-12-05T14:12:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=f3f05f0cf8c30a990193e332e26fdd8e54b3f59b'/>
<id>urn:sha1:f3f05f0cf8c30a990193e332e26fdd8e54b3f59b</id>
<content type='text'>
This is a first sweep of reducing the number of terribly named macros
in bn.h More can go away. Those we need internally go to bn_local.h.
Annoyingly bn_internal.h uses some of them, so it includes bn_local.h
now. This can be cleaned up later.

ok jsing kenjiro
</content>
</entry>
<entry>
<title>Re-enable bn_sqr_words() assembly.</title>
<updated>2025-09-07T05:21:29+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-09-07T05:21:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=9283c4361ce1f1a39a1f03c588c3d1a3da64025e'/>
<id>urn:sha1:9283c4361ce1f1a39a1f03c588c3d1a3da64025e</id>
<content type='text'>
This is now only on amd64.
</content>
</entry>
<entry>
<title>Disable assembly bn_sqr_words() again for now.</title>
<updated>2025-09-02T14:18:38+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-09-02T14:18:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=99f066b0e074e44bab8174651b96c62ac333cc64'/>
<id>urn:sha1:99f066b0e074e44bab8174651b96c62ac333cc64</id>
<content type='text'>
The old assembly bn_sqr_words() does not actually square words in the
bignum sense. These will have to be renamed (once I come up with a name
for whatever it actually does) before we can roll forward again.

Found the hard way by Janne Johansson.
</content>
</entry>
<entry>
<title>Constify bn_mul_words().</title>
<updated>2025-09-01T15:33:23+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-09-01T15:33:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=edd4db8b24106490f82c1a694d4e2b35afe9c6cb'/>
<id>urn:sha1:edd4db8b24106490f82c1a694d4e2b35afe9c6cb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rename prototype for bn_mul_normal().</title>
<updated>2025-08-31T09:33:30+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-08-31T09:33:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=faea853ea68887727c76f113f0487e95e8aa0738'/>
<id>urn:sha1:faea853ea68887727c76f113f0487e95e8aa0738</id>
<content type='text'>
This was missed in the previous commit.
</content>
</entry>
<entry>
<title>Rename bn_mul_words()/bn_mul_add_words().</title>
<updated>2025-08-30T07:54:27+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-08-30T07:54:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=694b88dc8ad458db9997e90128806a423fec09db'/>
<id>urn:sha1:694b88dc8ad458db9997e90128806a423fec09db</id>
<content type='text'>
Most bn_.*_words() functions operate on two word arrays, however
bn_mul_words() and bn_mul_add_words() operate on one word array and
multiply by a single word. Rename these to bn_mulw_words() and
bn_mulw_add_words() to reflect this, following naming scheme that we use
for primitives.

This frees up bn_mul_words() to actually be used for multiplying two word
arrays. Rename bn_mul_normal() to bn_mul_words(), which will then become
one of the possible assembly integration points.

ok tb@
</content>
</entry>
<entry>
<title>Rework bn_sqr() to use bn_sqr_words().</title>
<updated>2025-08-30T07:16:06+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-08-30T07:16:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=3adccdb355e2f651255227b11a6324730cb85e48'/>
<id>urn:sha1:3adccdb355e2f651255227b11a6324730cb85e48</id>
<content type='text'>
Rework some of the squaring code so that it calls bn_sqr_words() and use
this as the integration point for assembly. Convert bn_sqr_normal() to
bn_sqr_words(), which is then used on architectures that do not provide
their own version.

This means that we resume using the assembly version of bn_sqr_words() on
i386, mips64 and powerpc, which can provide considerable performance gains.

ok tb@
</content>
</entry>
<entry>
<title>Provide bn_sqr_comba6().</title>
<updated>2025-08-05T15:08:13+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-08-05T15:08:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=85ada1d50506ca1df60943a83591a12c2f5804fa'/>
<id>urn:sha1:85ada1d50506ca1df60943a83591a12c2f5804fa</id>
<content type='text'>
This allows for fast squaring of a 6 word array.

ok tb@
</content>
</entry>
<entry>
<title>Provide bn_mul_comba6().</title>
<updated>2025-08-05T15:06:13+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2025-08-05T15:06:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=871e14b0960d825feebc1fc7d19f6d3c961cc2d1'/>
<id>urn:sha1:871e14b0960d825feebc1fc7d19f6d3c961cc2d1</id>
<content type='text'>
This allows for fast multiplication of two 6 word arrays.

ok tb@
</content>
</entry>
</feed>
