propagate from branch 'i2p.www' (head fcd7d836b79ef46ef8fe9c5b8071d245efd54e29)

to branch 'i2p.www.revamp' (head e09d39855896e1387e30b596c8b0d71b202bf20b)
This commit is contained in:
str4d
2013-02-05 21:44:35 +00:00
13 changed files with 89 additions and 26 deletions

View File

@@ -1,24 +1,77 @@
<code>
<pre>
function intersection(a,b)
local s={}
local t={}
for k,v in pairs(a) do s[v.name] = 1 end
for k,v in pairs(b) do if s[v] ~= nil then table.insert(t,v) end end
return t
end
-- This implements a list of trusted signers.
-- It is used on checkout and update.
-- It is not used for repo sync/push/pull.
-- If you do not include this function in ~/.monotone/monotonerc, the
-- default is to trust everybody, which is probably a bad thing
-- in an anonymous network.
-- Update the list below to reflect the signers YOU trust.
--
-- ref: http://www.monotone.ca/docs/Trust-Evaluation-Hooks.html
-- Modified to use key identities instead of key names, since
-- monotone allows duplicate key names, so any key-name-based
-- trust system is insecure.
--
-- Modified from intersection() to use key identities instead of key names, since
-- monotone allows duplicate key names.
--
-- a: table of ID structures (see above)
-- b: table of hex IDs
--
function keyintersection(a,b)
local s={}
local t={}
for k,v in pairs(a) do s[v.id] = 1 end
for k,v in pairs(b) do if s[v] ~= nil then table.insert(t,v) end end
return t
end
--
-- from mtn source project.hh and lua_hooks.cc:
-- signers is a table of integers (starting with 1) to the following ID structure:
-- struct ID
-- {
-- id: (key_id in key_identity_info) hex of revision id hash;
-- given_name: (given_name in key_identity_info) // name given when creating the key
-- name: (official_name in key_identity_info) // name returned by hooks or (once implented) policy
-- };
-- id: hex of revision id hash;
-- name: cert_name
-- val: cert_value
--
function get_revision_cert_trust(signers, id, name, val)
local trusted_signers = { "complication@mail.i2p", "zzz@mail.i2p", "dev@welterde.de",
"Oldaris@mail.i2p", "sponge@mail.i2p", "dream@mail.i2p", "mathiasdm@mail.i2p",
"mkvore-commit@mail.i2p", "z3d@mail.i2p", "cervantes@mail.i2p", "BlubMail@mail.i2p",
"walking@mail.i2p", "neutron@mail.i2p", "HungryHobo@mail.i2p", "russiansponsor@mail.i2p",
"echelon@mail.i2p", "forget@mail.i2p", "privateer@mail.i2p", "duck@mail.i2p",
"m1xxy@mail.i2p", "hiddenz@mail.i2p", "dev@robertfoss.se", "hamada@mail.i2p",
"magma@mail.i2p", "kytv@mail.i2p", "str4d@mail.i2p", "meeh@mail.i2p",
"zab@mail.i2p"
local trusted_signers = {
"5bc185cfd680eb512fdb9626b9fb4298e136215e", -- BlubMail@mail.i2p
"f6706ac205e6b5d7a7e3ea4244ab0ef497f0a099", -- cervantes@mail.i2p
"690f278ff6c6157cbaf23b0d602b6d6dcf368313", -- complication@mail.i2p
"eb4ac08d5ddbb2bd73889f86c1211424025a6f07", -- dev@robertfoss.se
"aae785027c240ebbb0a883fd8ebcf8d6ecee4104", -- dev@welterde.de
"4ebaace9973913416af92ee8d0fb93d64753df4c", -- dream@mail.i2p
"7e498ae94c9c322404adfc61b16bed388095906b", -- duck@mail.i2p
"56c0064a8638fe180ed2f2726d6e2e404c788d3d", -- echelon@mail.i2p
"0e4e7ebebafbdf4cdacc45a47ba155b1215d8e8b", -- forget@mail.i2p
"f332b3d3b11b2efdae220cea75b9d5ba9ec3b52d", -- hamada@mail.i2p
"e246444b4fe69ba599e13403c4ab931066de902f", -- hiddenz@mail.i2p
"a61146ee69ddb9fcf3b82b19a62b8114b60d367e", -- HungryHobo@mail.i2p
"4844b1fd45f5a68744fa28d2f3e3b61a3cf83b95", -- kytv@mail.i2p
"c9b970f5e8917eada663d4c6b22096617021c95c", -- m1xxy@mail.i2p
"3be64909d6ab7c3d7afe16f20f24e672708b576b", -- magma@mail.i2p
"2977a6f4e11819a3f928783175caadc0071fc4de", -- mathiasdm@mail.i2p
"de9d196e8057e1629178edbfa1ed754c648d7340", -- meeh@mail.i2p
"2a0bba98558d7a9d7e4b1bd807789601252c0024", -- mkvore-commit@mail.i2p
"6ade4b7a9a6425194f482ab351950e4230dbbc85", -- neutron@mail.i2p
"bc74b49fd8a20513b2745a3d13414b7e9818dd18", -- Oldaris@mail.i2p
"3fb8d1ee1e82981a8076ddbcbf4d18f372b8bba7", -- privateer@mail.i2p
"e3815f0c985663182534fbd7d6a2bf93204a0bd0", -- russiansponsor@mail.i2p
"1092773c40f5813b9179d52a8ab7b499b9554da3", -- sponge@mail.i2p
"01265f0c817b24548478341fb75e672720a78b21", -- str4d@mail.i2p
"38fe2aa37e1eb9a300a2061ef153265c48031c6b", -- walking@mail.i2p
"a0eb78d437efad120dd9edcd776a327ec2c2adde", -- zab@mail.i2p
"896e399990704373125f782ae2ee19b6611ac612" -- zzz@mail.i2p
}
local t = intersection(signers, trusted_signers)
local t = keyintersection(signers, trusted_signers)
if t == nil then return false end
if table.getn(t) >= 1 then return true end
return false

View File

@@ -382,6 +382,13 @@ MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDNrBX5L+Ptk76Pdd
C4cxYbWBxXN/XK39V5tc1z3Ngsk75OFS7SFPxRF875dwoHGnNlIXBZ
NAeZBQ+zlStljDkvaWD1qYI9MvYklEBetL2dNc86sRnM2DMQIDAQAB
[end]
[pubkey dg2-transport@mail.i2p]
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDYEQ8kziAnYDCxgR
I2CzDAkmI1ZJgEwZxGm3Dn/Jj7aNjXsJQeWDe4VSwVvtJdzwbrp3qm
GBapx3KtetESkPtq6BVL2j5qXP3rQ2QP4nOFh05DcuiO7D+uqHpLIb
tPXStQO9WfFgCzXRMvpCkX4OdnoRGgFkiIZHQJxT+ATLtNwQIDAQAB
[end]
</pre>
{% endblock %}

View File

@@ -341,3 +341,6 @@ git.repo.i2p=v-SEpHJSYmi~Jj7t6~GIsFztppakTNgD~k08iP1WhTY0c3XBvTvJIA6zoL5gn1HXi7l
pull.git.repo.i2p=M-UMjXHcm6Wi48vESwcASuW5OEDtrVjb70gyWpXUkwO51r2Nu~ORTTbBg0fpq1kXT0RgNJnOcPe3Ea3v~DvysOx1BN9P5R9bIO-h~X2YV0euwtkfxs94w-AgViXFdVvtJEgZ7isX~IwYCVnod9wS-hO3NS6BkAhPLNKNDDwUeWHJNobf1Qv7EU9bIwAMPsSbUJsyk0SWhWSEM2SaspxbwzJY-1l593HEARSP3y4rkHfI7By82PZiZBLVUs3epkXPY1jAkq75prH6VBSyK2PICbhwrcFlSB3lYiZejTAGE94rrYNp-LPvjQe80KHEdA9MD~ecmCUy3z3OrUHigRkXlXco2XuJsjpzvkZTDt8EO2RkmAeHww5BNgZf23fcN42vVOPizl0crJifXy67VRSNwOEaEt0tklz9ckyTFrxxe0zVXZyalkk7GwLehLpbnnvtqw3KVIXh9hvKuwLypWIT-oWwSWBxDOqTou5RMzto-lYvPLdWArsx-KCAvJRUhgsAAAAA
push.git.repo.i2p=Mau9Jcsspec4cbDlrkt5zdxN-kq9SG9GxtvOQ6wBhgJKxRyEvZG4oqGs5N6oO6tbhwWarYhT28ctVWCAfo9FhU6nsO085p6qQKwpccYQwo0a1~8iw1oBqiLXrobZk0~bnwQFMKCVWekyx8HTxz9KwQiMRPlDKcBmxQXQHr~IXdUfcXvCFheYToqkks6D-~6jygHMaa14tEJd6VewZFYseM-YIXMzKop4sYuh8belTL1BdIY2du57ANNhcalFEOsSso~ZVkxgdBKULuKQvDbHqbp7rRI5WRU2pqpcdbPKYV5WES7r-t16vdLNB-6kK3iUt2KtaU-lJg02x8LzvtUAL44hJQRGg5Z3JyWYdWVjL05gVraA7-69vGvad2~OcvlcAYwAsqioxjulSO3I4dw9oOtUf5DuMeXj7~x6l0sJF5YHjADJcmesr4NnZFXiY~WEX3zsVnVxtq4YgFsKMT2wpC2fP05TrT11vlvGVeUzJ3HKyQHLXGxN~fcZqJQmRmT2AAAA
irc.killyourtv.i2p=CnG0yQheyd67rl1nHuYZp1sVZxzXHe05UPrmT0B3Vxtd51K-Cq5E6v5~UTrU5lqj56ggvnRl0I8jg1vPn0Q50IH6ght~4ThkKlwDwTOMHmROz3sR6WLCOvD4ZFMDBYjBsxjF3383YSIlYrh~laTXSzD~lPhHLGD1jFQksqea-87sM-yfRzCbA7UyaHtURJ7A3GOb8Bm8W25mPOHpM~xT0TONvbi45IVmAeWkuZ5IhBsrzhWvY1-Riy6IW6KSRoQIZtr5o23cVHkjUh8J-~SWZR5wIgECefrVVCt556qDn35I2829Jlk26-iI9glMrr7funaOtp1wnDvNPTijlxwkeAx9GKPCX48nCyxIUeSTwGv0grDPn43V94tV0LSq8mkXZ1akDJUNf33z2Uao-nCi-ufb0Mt0rzgdRVW1i79GQHk4XbApzjYUjyaSY4cuR0yBRFHrOcrFt~XJABpt9DYklu6y3n54uOLZeXGnE5nKCSHLqyS3dxPTObIQvhz~ZjHRAAAA
www.syndie.i2p=DvyDrcY8se2M~qqp4qfZn-6UTFfS2Ieaye5QIhKoFQGktMbCK2MzhAMYvNm7n1k9O0hG86-nXPCP8rlFurPrCAKta~baUlCgbV4ft5zzu0Y4DFuhC6p-3V-03S5WF8JA5Pt4KEcKKEYiOkHzGVSKuWIjH11syZ434c0qarOFfynS1ZI2Ixlv2OXCEzs-r5NeMRy3tfwbLyPF46END1CyoWCNx-FUdOt5ueXVokYeJ00Pzqvhqb6ByqRh76N3Fz3GGIUjjSmSljDSN8B0K9943jKXCoH75YnC47cw~RwSD53pbLXiLWHqtIiqx8Zvq5LgIac9UVpIA9Ka27TWa5OhVhBKwuynPnfVaLv2xOR8dEDmVNnO8sNp4kP~MMTvJAUJfhAbPFbAs9i4Wx0IlLKN5gLnft-7Xd1pMivKZZaNWFicwr69VMub-ddl~vbhtueIvmkEdoLIw4xBb6nHmKy0gHi6TWjEmLXb8SsgDOkri7Nu9qRV8t6VF60wpjHPG33eAAAA
syndie-project.i2p=2~qacMy9FwwWCFm3JYRKSLIe8u6wEuinZPre0WoZC-M3IUSg8VhUp1QSPuaeFJdym69hjew6AOE-wnZ30mtzriXyvaYh7UNshTc9ZdEBWwhdn5cghMjf48HdBw3pKAiiw1gwv8WwsskbAxbSTkcQUmqGsterPyUqspSqddwUkcDxZHC7dUJsyyd4gcul40KljlIu9mMWXZLWQ7Zu8od~NcFNHVBE-UnTvDmHErpx7AWcN9VrD4j-OuVqsLYq1T9uhdLH-~H~9eE5RKekz6ehhGJRLlGB~2~MYVt4xrqbo4z18nFxdp9PorOO1wt5xiFSw4GEX5HAO2~pt97DVkcwogOEVCJbRbLiIJJDmehn5PB-56K4tjuUNFtzLAq7QQZEAAHGCUEaVPUObKS20vU~JN6GrAOAXKM2M-16frR0ddpJ4f55iuc~tVL3OFPAtha5aHP9xihP7i80rB5LsG0aT77Ey~mCWHrV2sQwhua40vP9TgpCi6Lg21DnVrR97S5tAAAA