diff --git a/PowerEditor/bin/change.log b/PowerEditor/bin/change.log index 61b3e0ce3..6905b2088 100644 --- a/PowerEditor/bin/change.log +++ b/PowerEditor/bin/change.log @@ -1,3 +1,10 @@ +Notepad++ v8.8.3 vulnerability-fixes & new enhancement: + + 1. Use self-signed certificate to sign new release binaries. + 2. Fix uninstaller security issue (CVE-2025-49144). + 3. Enhance security for DLL loading. + + Notepad++ v8.8.2 regression-fixes, bug-fixes & new features: 1. Fix regression of folding state not being remembered through sessions. @@ -14,20 +21,20 @@ Notepad++ v8.8.2 regression-fixes, bug-fixes & new features: 12. Deprecate 3 APIs: Deprecate NPPM_GETOPENFILENAMES, NPPM_GETOPENFILENAMESPRIMARY & NPPM_GETOPENFILENAMESSECOND. 13. Add new feature of using first line of untitled document for its tab name. 14. Enhance NPPM_DARKMODESUBCLASSANDTHEME: Enable darkmode progress bar for plugins. -15. Various dark mode enhancements. +15. Various dark mode enhancements. 16. Fix right click on caption bar unhidding main menu. 17. Fix rename tab error message when tab name is unchanged. 18. Fix Python FunctionList absorbing next function issue if space after colon. 19. Remove .log from errorlist lexer's default extensions. 20. Make raw string syntax highlighting work for Golang. -21. Fix Notepad++ tray icon lost after Windows Taskbar crashing & being relaunched. +21. Fix Notepad++ tray icon lost after Windows Taskbar crashing & being relaunched. 22. Fix changing toolbar icon set not updating to matching panel icon set. 23. Fix Windows dialog file list not react with keystroke (character match). 24. Add "*" mark on modified file entries in "Windows" dropdown menu. Get more info on -https://notepad-plus-plus.org/downloads/v8.8.2/ +https://notepad-plus-plus.org/downloads/v8.8.3/ Included plugins: diff --git a/PowerEditor/src/MISC/Common/verifySignedfile.h b/PowerEditor/src/MISC/Common/verifySignedfile.h index 00c870e43..de5f32f3c 100644 --- a/PowerEditor/src/MISC/Common/verifySignedfile.h +++ b/PowerEditor/src/MISC/Common/verifySignedfile.h @@ -67,8 +67,9 @@ private: // Code signing certificate std::wstring _signer_display_name = L"Notepad++"; - std::wstring _signer_subject = L"C=FR, S=Ile-de-France, L=Saint Cloud, O=\"Notepad++\", CN=\"Notepad++\""; - std::wstring _signer_key_id = L"BDA51B6C752C9E448498A690CCDA00A609F244A3"; + std::wstring _signer_subject = L"C=FR, S=Ile-de-France, L=Saint Cloud, O=\"Notepad++\", CN=\"Notepad++\", E=don.h@free.fr"; + std::wstring _signer_key_id = L"7B4D26B77F8269B987AC3E8EBC3899E1A4176DFA"; //=> Should be UPPERCASE + bool _doCheckRevocation = false; bool _doCheckChainOfTrust = false; diff --git a/PowerEditor/src/resource.h b/PowerEditor/src/resource.h index c617d7d3f..fdbb4244c 100644 --- a/PowerEditor/src/resource.h +++ b/PowerEditor/src/resource.h @@ -1,5 +1,5 @@ // This file is part of Notepad++ project -// Copyright (C)2023 Don HO +// Copyright (C)2025 Don HO // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -19,14 +19,14 @@ //************ Notepad++ version ************************** -#define NOTEPAD_PLUS_VERSION L"Notepad++ v8.8.2" +#define NOTEPAD_PLUS_VERSION L"Notepad++ v8.8.3" // should be X.Y : ie. if VERSION_DIGITALVALUE == 4, 7, 1, 0 , then X = 4, Y = 71 // ex : #define VERSION_VALUE L"5.63\0" -#define VERSION_INTERNAL_VALUE L"8.82\0" +#define VERSION_INTERNAL_VALUE L"8.83\0" -#define VERSION_PRODUCT_VALUE L"8.8.2\0" -#define VERSION_DIGITALVALUE 8, 8, 2, 0 +#define VERSION_PRODUCT_VALUE L"8.8.3\0" +#define VERSION_DIGITALVALUE 8, 8, 3, 0 //********************************************************** diff --git a/README.md b/README.md index b27cb0542..a344f1cf2 100644 --- a/README.md +++ b/README.md @@ -11,8 +11,35 @@ natural languages. Running in the MS Windows environment, its use is governed by See the [Notepad++ official site](https://notepad-plus-plus.org/) for more information. -Notepad++ Release Key ---------------------- + +Notepad++ Root Certificate +-------------------------- +_Since the release of version 8.8.3 Notepad++ is signed using code signing certificate issued by the following CA:_ + +- **Name:** Notepad++ Root Certificate +- **Serial Number:** 7A137FBEA48E8D469D2B43D49EBBCB21 +- **Fingerprint:** C80539FF7076D22E73A01F164108DAFBF06E45E4 +- **SHA256:** 443B4543C3A682804540849793556FFD3A6CE5D4721C9ADFDA6450223DDD54D7 +- **Created:** 2025-07-09 +- **Expires:** 2035-07-09 + +https://github.com/notepad-plus-plus/notepad-plus-plus/blob/master/nppRoot.crt + +Notepad++ Code Signing Certificate +---------------------------------- +_Since the release of version 8.8.3 Notepad++ is signed using code signing certificate:_ + +- **Name:** Notepad++ +- **Emitted by:** Notepad++ Root Certificate +- **Serial Number:** 38D07732D5E4A2628A303D479035C1D1 +- **Fingerprint:** 7F517E235584AFC146F6D3B44CD34C6CC36A3AB2 +- **SHA256:** E372E385C1A04527D152B155254F03B073C3A1E332D3288774CBE440E4C59A94 +- **Created:** 2025-07-09 +- **Expires:** 2028-07-09 + + +Notepad++ GPG Release Key +------------------------- _Since the release of version 7.6.5 Notepad++ is signed using GPG with the following key:_ - **Signer:** Notepad++ diff --git a/nppRoot.crt b/nppRoot.crt new file mode 100644 index 000000000..fc17ad0ee --- /dev/null +++ b/nppRoot.crt @@ -0,0 +1,100 @@ +-----BEGIN CERTIFICATE----- +MIISOTCCCiGgAwIBAgIQY6Yz0mXx/+1mxcZ8vZtxiTANBgkqhkiG9w0BAQ0FADCB +kjELMAkGA1UEBhMCRlIxFjAUBgNVBAgTDUlsZS1kZS1GcmFuY2UxFDASBgNVBAcT +C1NhaW50IENsb3VkMRIwEAYDVQQKEwlOb3RlcGFkKysxIzAhBgNVBAMTGk5vdGVw +YWQrKyBSb290IENlcnRpZmljYXRlMRwwGgYJKoZIhvcNAQkBFg1kb24uaEBmcmVl +LmZyMCAXDTI1MDcwODIyNTMwMFoYDzIwNTUwNzA4MjI1MzAwWjCBkjELMAkGA1UE +BhMCRlIxFjAUBgNVBAgTDUlsZS1kZS1GcmFuY2UxFDASBgNVBAcTC1NhaW50IENs +b3VkMRIwEAYDVQQKEwlOb3RlcGFkKysxIzAhBgNVBAMTGk5vdGVwYWQrKyBSb290 +IENlcnRpZmljYXRlMRwwGgYJKoZIhvcNAQkBFg1kb24uaEBmcmVlLmZyMIIIIjAN +BgkqhkiG9w0BAQEFAAOCCA8AMIIICgKCCAEAwMv32RIhXq70N1NFV8lWH14oYOWf +4Kr3XE+M7b85gHxedEMLjHU1/HB7viK/qQOTm+f4Y9Am8lkXg6eg4iVbDoSoPG57 +Wx3Wy3vzti82KlZ7l+fkqUJYKYvDGEma/hhB9BNIUXutsZfZdMm43EXAxox62bYo +04T1exu8PWtvP8sUtkfeadxt5O2dhmOc9GjDrUVrFwkpnwWMJ7xyP3AHqj1htfgb +X1+VLzAvu+8shOn214h0BOfg1vJ2XhVfsmZiSDkM45WfISuCQdJrA3Gjznb3eXJp +oD/xKqNdHgWCRMkwVqnxjBHVXkZlV7mcUy+6SohpDmJUuhP14xFeu6SNrdniTy9d +ECndIC8ISQnSk0+vJtBNuyOj0H6B+mPg0Fcz2uvwSKJ/Zs5PCxU27xsFNweGw+Oe +z10mlWI5Hz3eVtQ/uyZwtL/Ncd/wUq+00bQa1B6am63oFWlmBMTVTgtE1EYUu8S4 +d3xM5HSlh5ZdHzm8ftcHLqiNeRv3ZaK+p+dqMqCx03dCGpC1j6pdKiigivZM2u4s +Ff2nKg+S2l6Sgm5QadIrXUH0XscKB7oBEtMO2yyC/esd+C9vXVYKKGV5onVd+TzL +DMuElWYr1QJ47AevjSiWpJR/WqwQA9mFxjkNH877mD1UCKo03IrQf+3+6wKS9ka6 +kKcGFokJajrgPbTTNrmeEHEwSi3l81U5EZhW4GewhWkjGfMtyYYO60+RTa3hv5rq +0SYDAqpLswqExqop68CGu7nbV71AR29TDmnYkaFZgr5+o6V9TzruWoox013Nl3O4 +wLcIV8HeDn1uD5LXwro96CQknBb1FvKDPwpGXVhAJ/Hnx2jVJwTT6cHQ1qhjUhU9 +a/wcN0RaLBUVo0Eg9FG//8lVOT2Pv8kGKSox7ooK/2EjbcQB+DL5mgmiItIeW85s +gkdPHRfpsNZDYgIUqLU8/X7zAn8IsgAUPKi5kNwCFenIrzGRf+HPU8WzvUrE94hx +SowYYGGmJWijDfvbaCtKz2Nx+4ani8oZGXAWlPv9qSFz9kte0ZQdOGjNUtJoRGW8 +tfaD9LNbS/Bs6y2vEFsaRHTEAK6LvPgWzgyKwNJS1Lnn5d6SmX5hdroZVJ0UwpHa +FETDew0rNh8tDft4zcWCbWix8H6mYSLrg4T0m6goDRTa/H0jLJ61SDLlX332b1W0 +0sGPcNpB6Lx8N850iCCAxrIEqwwTkfzkmPaiZ9F02MgPvEApvzvBEXxt0WILFBGj +4CGbnNqrpU/g8PQoro4HDSqp0mA4t5x8HNIbihl3q1PdBJbZ1/5iCy3kK/XXKmGm +mpMdzd7q63SEB7YJVkxFhYzOxzVQffRakZ30Imu0jXuD3hf0U+GVgGQJWJM7XJdM +HKYugo4SQzp9V6Sss1Tgjsqt3V/oQkHFwmtou1YoMjvz+Wli669Iean55LRieE5c +iKGe1saTv5fHBLCEy6z/YAK95sUkAnT1gHoynb1wdo0aDcONHv0J+P2XgXtV7uDC +reQveEhc346Bq5AE+ITSWADtH4vzzf6y6M9SdcNvGWcyrBaGP+W5MAxX/QxxOmdb +DBhkqE1KOrsaUJV1jKpdWcihlWe06Sne+JhrTqzJxXROYnP7LAi8+NrV4hs6kGyK +zkGdwuLiSKrXQmwU9O6jNUF07ZQgyZk0fXaChW9yrjM58cZOLDUMG5Gltfq40G/O +IdpgcibRsx8eIceXa12HQAxvfYIDpvMf8bWzyyyuD9q09ZyXwnulPGKot1emKYYO +PuNad5IrCZprVm+pvhtTcDWVCbfsF4XJorBgXBaSGBQz92GouXu9E5RtHu42Bdgu +56t7m1mqRUloQ2GT0rtfm0bQ9huPsmO8JJdjtTwI7d//4+C2GCXMf9yZVBnHUEpl +VQn5xliKJ7XGV/2t4ajzcKX+tagXWl9bxFrNHW6nTNeJHrg1ucoSi70td6gFoGaN +LbJrGNX6EEWvAU3JucrVLuIyb/VZgzd4OevuP2cDXTWDDrMyrm9IFK8GzK8c5g7M +4Eek9PhRT3L6C0XUjZRy86e5SrI+clpUSPHdWCvVRj+TgD0WovE3NB7FBT6jgT2b +WOnvp2NRdN7OAhmgNHnW/2fVlioN0ruJ6l6PQE+HxF7l1WXAH8u3gzHyEhAlwo2e +//amgH4bux7YWAePxHF3b5DWp1jHEJvZE11wsqWSYmQmENqde2TPxA0uTmHMFIPE +h06r9j7brXQ0PzcCqKpqyGbOVH/aCqSt03Ms+2O8WZKyH3m1lHdexlGizIpgQQPN +luLLmnS96uJOZm036RjXyPjZW8SMP8F21hllsq6OMW2Qtz1UYFsm+7QTP1/MLUKP +JgP80hnct6uCjOqsilPROTPvj4mW9nJHRcLscQ2AthFuExjVWIFcdBYbr/iInmpl +yPA4a0LBjFxnXFLQ+j2+S7w+jxBDLA2hFUvv1upe+6/G2R2Muv46j7cXd+5PcqND +v3TfAQk8IagevrDCyOGWPPAqP5IIg03A7KucnoUWt2V+ckDiiU/co1hJxXgc8dbi +PgTFcZuvPyerXzWC13OxwOB3uOF3LHKp7RGfF2SqjNYUA7XhZwtGLK1LdzkleXJZ +uN9YU1MKjEX66uMWHEEvnNqGGbBwS9XLln6L2tqiIKD0MJLeu+ryH8MVtb1y8xeZ +EX8VOKh8nMny4oswZGZMdLXArtX5BFWetGz4AgaY8CUGKoeh3bIdaKbXmFGJWNPE +CLeJASa+Px6xDEcCAwEAAaOBhjCBgzASBgNVHRMBAf8ECDAGAQH/AgEDMB0GA1Ud +DgQWBBSL3g+lQts500evBqg6ydCdQh0TZjAOBgNVHQ8BAf8EBAMCAYYwPgYDVR0l +AQH/BDQwMgYIKwYBBQUHAwEGCCsGAQUFBwMCBggrBgEFBQcDAwYIKwYBBQUHAwQG +CCsGAQUFBwMIMA0GCSqGSIb3DQEBDQUAA4IIAQA9KKI2/GRfq6Yh5Xth3RiBn3nB +PyWAq4WwMprjX3og2J07XhtPcoikDiFo+N/t8CLo77WD8BGypLd5rGuXJLkJLumj +KUpLgJveC1lXcHZFh/GXXe/VkMJ1bI5M3YmR5XwxBG3EDLa+FQMzX29CwCQPoCwC +Q5HuQLl/7ZbqEMwaaIJErhd/eQjgXQ89psU7/4+5IlTYhWlHoklMAy9MnJ5Tn6oS +gJ6m1dmGnnarOg++CdkMgh4TfKZGiwy9E7+d7ZqPv9z6TPnu5MbVsgtrb8F/DF7Z +MOlarbGeECrHzS/e1Np4BYTSt8U17FEBw90JSjpgWST9xddHFPsQJpLioUdDde3d +wjfZFa1l9To0SByFXNVGoI/UE0sldHRrO+xG/uyU5C8qUbyuR/PRg97ozDniu6Ud +A8K/dkgQ8V9qToJqb4BI+5dHJ598lqVtufUwaN79TwtI7PkhTLlKVamltLMiMtqZ +Lv1By01hgPNBzyF8WMGwe4cHEri7Dv2LULi1kARKuU1L9zJt/M6wYicBNvopCht+ +jzk+PgyXFvsc8bXc/GHSOPEvVH4+gev/J+CimpLx60xW4KoBFTnQTj9FzVNgErrD +Z+A4BjhVjwkV+F07lecvQbL7HgAhnFqOYPsX33SWtl5OJaRXkD5lp0K2XkS/zaR9 +NNTMIoJPJtA7V2WsItkuObjqlPUwYjxSzSdQTTL7tq7xeYvrTXdAyncj2O4xjPn/ +VXNJi6WLzk24BSQSxoD0eBb+Vf7kA7ySCSXw70Rx1zWRmWrw2xwpH1PSJWAFX5uW +O6z2pFFUx2FFfFTs8nxaFlFpJdooNgXJ8cqML8YpYD0AH4hx7xkU+CIvALLurzYM +DvS0+X153MPVxNMvrFP7dtUR8CaUU1oIlcsrm6Dvgk6QeQ3WP7gjTd14vkX7IvrY +UYZTH6SCA7PMEbMxbEOaqtf4HOuwxzjhPgOqWjMEj8Yn18QwEuUre5Qf3FYX/w5f +hRibjBouKgEow+IPwJnFoRXwPceLzTdiiM7ith5DrSxX02w6/RN7pFIuRl5s3h0u +UidUBHTe5GyNI+JLNafrZGi0EG/9ubHq+zaBGeM83K/WkC4aw/L5+ya4GveHUPDO +uIv7KXvPWPgvjot407MNfQOOTtpDj2i5qea7x62nK0Nn90XELQ4uOm5ehSc4GqBk +sGeFOBZPAyuaGsdvMizBV9NdHDBGfE3VdqnaqRCMKLb6/8SoqKfFhaFB33vkwic4 +h07Hx9eAT8BiGfc8mZ9s+7LOIfqaWwYYhfdUgrAeGbBcEGIqp5C4DdBMfUuvaIRn +agYbJvYmeW4xrap0OY7Z6+9QqtFS2vm2ZFK2OPTFMtcIj6YEDgBWp0ehmyK89vI0 +z+0Y+Yxez8iVFfrgxKgiHd4e1UltzwBvqp09w5q0082vwBuR/9UcA5BQGhgPJyGd +9fXR8HAsXc/lt4dcDIu3xHdDmtN2uj42LliHtr0q+O3R2HhQAuzuuIS+zMt9DNLc +QLEJ8yUlF+xLBS9xtf/KUIZrdsANxVa2zpRIcGdsichgz/RCC0S8SWg+SakRrWFo +Oj9UDut1wL368dTkRUOJvDmSH4JuTSgclC+2x2q6tBsCZwGeqcoo2nbXHI+haZSK +7/VWq3DQPKVuOm8xLZXWMl2ePOeiJh3v7je1mIhgY/o5RhGWttn7JjSTxu23zkt1 +MK7qVN/aMeoZH7+FY01eOI1H+POPiHW2FokE7QiPLSY75/9vLkd/dZl94C10E5ie +18UZYtaPt5yNgyunf4HWVI7qjJ4OeetHJpuoB7sLmH+XC5Ed2iWC4oUqDFRSonKb +h+8ppDkPr3OaoevYhhU2eJJxQjcDrXFjy8eFZMVw3m8Ltk7TYz6fOYNg9pBtW201 +Wps+yeVyJLxcRy5U9sak+OrEG9nqVGbRTAxX7naQAdtu6DAxyWoBTe3bgHerYvoD +CwDervu+cwKWuJuBBc+xuhVMtesv4Ysqyg5nkFqQtaC7FMwHtf6wUqAujpBkkqYm +NjIsO2uRkIj3aNHJ/wsM/NeqhshsGRTIEzna8hUe8I6FXBC4tt9E2xUlmQySbF6Q +mMwWmftI8UBt4SDGWM0j0kLLEBLTHxxmdBJlbTS5rIkaegkL7zrIBIc1bxY3twU2 +M19c5TvStU7C2nFyKIsmZIx7wLsnco/ZwLTg+wUm4yd0AG2cZlowCVbVIPYLVkyQ +OOGKVwlWWTWXcLFHXLNkZikRDdmLYyEMz3Ek8QTOXttWOGjBc4rcRr2QXGPKURJt +xa0/haKqQGBNLRjkEQl5cq+47lQr23mS8XuuJ6y41xBXTKpIKrNH6Q9FGiaT4uxO +64gt04V32V97JA08cm12ddqWl7bKnhl7dgcNj9XYOfZEgnaIMfegErcs1quajrdx +Kqm7V0QuXdhC+rNAGLYusiv8slhCOOrxiDO/niZ1POkf82wvxkR/pOJ0RAM3oMY2 +L/E/bIB1w8Fj3hCdc8t6ySINEw+QehPVmZbx/pDJsEOfuouySZWflKeZVb5kqc3s +7diUBE+a1OlrWLm2YQ5R3HPU1SI/1TZpaSFuR3ckdHgPYxzO3x0p6zHBGLHGHtYi +KkVWLit8/eCmua/DQyISUwjGM6YHYVziVLVXIQmr7v70/rvA32z4jtE7s/nj7aOi +D8ylbgqshbWj7VggWe7uvNrhCXeZN9eu5TEHIa3GBnP0R33FE4OJv+h5/o1vaU3/ +xsUIp0Ub+LN+i2j6eA== +-----END CERTIFICATE-----