مراية لـ
https://github.com/postalserver/postal.git
تم المزامنة 2025-11-30 21:32:30 +00:00
feat: add sha256 signatures to outgoing http requests (#2874)
هذا الالتزام موجود في:
@@ -98,12 +98,15 @@ module Postal
|
||||
"#{locker_name} #{suffix}"
|
||||
end
|
||||
|
||||
def signing_key
|
||||
@signing_key ||= OpenSSL::PKey::RSA.new(File.read(Config.postal.signing_key_path))
|
||||
def signer
|
||||
@signer ||= begin
|
||||
key = OpenSSL::PKey::RSA.new(File.read(Config.postal.signing_key_path))
|
||||
Signer.new(key)
|
||||
end
|
||||
end
|
||||
|
||||
def rp_dkim_dns_record
|
||||
public_key = signing_key.public_key.to_s.gsub(/-+[A-Z ]+-+\n/, "").gsub(/\n/, "")
|
||||
public_key = signer.private_key.public_key.to_s.gsub(/-+[A-Z ]+-+\n/, "").gsub(/\n/, "")
|
||||
"v=DKIM1; t=s; h=sha256; p=#{public_key};"
|
||||
end
|
||||
|
||||
|
||||
@@ -40,8 +40,9 @@ module Postal
|
||||
end
|
||||
|
||||
if options[:sign]
|
||||
signature = EncryptoSigno.sign(Postal.signing_key, request.body.to_s).gsub("\n", "")
|
||||
request.add_field "X-Postal-Signature", signature
|
||||
request.add_field "X-Postal-Signature-KID", Postal.signer.jwk.kid
|
||||
request.add_field "X-Postal-Signature", Postal.signer.sha1_sign64(request.body.to_s)
|
||||
request.add_field "X-Postal-Signature-256", Postal.signer.sign64(request.body.to_s)
|
||||
end
|
||||
|
||||
request["User-Agent"] = options[:user_agent] || "Postal/#{Postal.version}"
|
||||
|
||||
المرجع في مشكلة جديدة
حظر مستخدم