Changelog (Commits)
- bump: version v4.9.1 (b500793)
- test(ContentSearch): update placeholder drive path for repository hygiene (70594f0)
- perf(ContentSearch): optimize FTS chunking and prepared SQL statements (4b49e27)
- feat(ContentSearch): navigate placeholder row to plugin configuration tab (efa27f0)
- refactor(ContentSearch): streamline to pure SQLite FTS5 full-text search (8f0c75a)
- feat(plugins): support CJK trigram substring indexing and multi-token matching in ContentSearch (88a64a8)
- feat(plugins): add ContentSearch plugin for full-text document indexing (0101aa2)
Security Verification
SHA-256 Checksums
- Lertaro-Setup.exe (x64):
36dc540c217fdf6a80d4e6bef5152a731dc1a5e8fadca447c4e0f6d559a7a31e - Lertaro-Portable.zip (x64):
001ba8b3eb2dcd91188f668c97a2c569013a253979d92ec44374cafc0fadfb05 - Lertaro-Setup-arm64.exe (arm64):
e1c55c16aae76fa9d9b76dd70943b56965579b886b2f16e3229aa58854bcc37b - Lertaro-Portable-arm64.zip (arm64):
8b2d2020056a983a2b9f994e6677dff0851a5d4365e62c17044ec2ac33825937
Signature Verification (ECDsa NistP256)
The portable ZIP release is signed using our official release key.
To verify the signature manually using OpenSSL:
# 1. Save the public key shown above to 'public_key.pem'
# 2. Run the following command:
openssl dgst -sha256 -verify public_key.pem -signature Lertaro-Portable.zip.sig Lertaro-Portable.zip
# Expected output: Verified OKTo verify the signature manually in PowerShell (.NET 5.0+):
$zipBytes = [System.IO.File]::ReadAllBytes('Lertaro-Portable.zip')
$sigBytes = [System.IO.File]::ReadAllBytes('Lertaro-Portable.zip.sig')
$ecdsa = [System.Security.Cryptography.ECDsa]::Create()
$pubKeyPem = '-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE117370jTbSPgIwHLntC+Bi3SD6gJ
QfxAySjSpUWa6zy4n0YHVv/ZWXM9zQlF2LTqpQC0iHNdJNH+MKU9UvDMTQ==
-----END PUBLIC KEY-----'
$ecdsa.ImportFromPem($pubKeyPem)
$ecdsa.VerifyData($zipBytes, $sigBytes, [System.Security.Cryptography.HashAlgorithmName]::SHA256, [System.Security.Cryptography.DSASignatureFormat]::Rfc3279DerSequence)
# Expected output: True