Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1027)

Unified Diff: net/data/verify_certificate_chain_unittest/serverauth-rsa-ku-decipheronly.pem

Issue 2805213004: Refactor how net/data/verify_certificate_chain_unittest/* (Closed)
Patch Set: fix android Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/data/verify_certificate_chain_unittest/serverauth-rsa-ku-decipheronly.pem
diff --git a/net/data/verify_certificate_chain_unittest/serverauth-rsa-ku-decipheronly.pem b/net/data/verify_certificate_chain_unittest/serverauth-rsa-ku-decipheronly.pem
deleted file mode 100644
index ed7d7232db24a7eb3e36383b330dad126fd0309b..0000000000000000000000000000000000000000
--- a/net/data/verify_certificate_chain_unittest/serverauth-rsa-ku-decipheronly.pem
+++ /dev/null
@@ -1,286 +0,0 @@
-[Created by: generate-serverauth-rsa-ku-decipheronly.py]
-
-Certificate chain with 1 intermediate, a trusted root, and a target
-certificate for serverAuth that has only decipherOnly.
-
-Certificate:
- Data:
- Version: 3 (0x2)
- Serial Number: 1 (0x1)
- Signature Algorithm: sha256WithRSAEncryption
- Issuer: CN=Intermediate
- Validity
- Not Before: Jan 1 12:00:00 2015 GMT
- Not After : Jan 1 12:00:00 2016 GMT
- Subject: CN=Target
- Subject Public Key Info:
- Public Key Algorithm: rsaEncryption
- Public-Key: (2048 bit)
- Modulus:
- 00:ad:4f:bb:4a:8c:03:fc:72:e0:cc:49:9f:2c:5e:
- b3:e6:64:d8:c3:4b:3d:04:f5:a0:80:c9:66:1c:e7:
- 28:7e:4e:bf:7d:45:11:81:66:28:17:e2:79:6d:39:
- 9c:6d:9e:8d:75:88:61:01:ed:07:ef:43:21:94:0a:
- 02:59:4d:9b:01:ac:ea:77:57:b6:03:ae:e2:ee:ec:
- 3d:2a:a7:30:ee:6a:7d:58:4e:16:99:7d:a0:11:f5:
- 53:28:a0:4d:ba:6f:6c:c2:9e:1f:97:1f:1f:39:50:
- 59:cc:d1:87:94:1f:a9:0c:52:6c:21:b6:00:16:5c:
- a7:d3:f8:f6:49:8e:b3:52:10:25:7d:9d:1e:4c:db:
- bf:36:50:94:7b:fa:cd:b7:4b:45:91:f5:5b:48:e9:
- 69:cc:ea:d0:31:cf:de:cf:be:c1:96:0a:02:4b:97:
- 7a:b3:5f:2c:e0:fc:ca:42:40:03:a5:06:5d:ce:b2:
- ec:6c:3c:c0:bf:65:e6:93:71:92:b1:78:5a:2a:00:
- 56:29:58:a3:5b:a5:2f:2f:16:2b:b0:3d:44:4d:cb:
- cf:38:ae:ec:c2:24:50:6f:24:17:6b:03:4f:8b:eb:
- da:22:7e:ff:2f:44:3b:da:78:1d:d4:63:b0:75:75:
- e7:0f:e1:cb:d6:aa:08:92:b5:1d:8b:23:61:6f:e4:
- 44:71
- Exponent: 65537 (0x10001)
- X509v3 extensions:
- X509v3 Subject Key Identifier:
- 64:03:B3:9E:45:93:DC:D7:0E:93:D8:D6:15:98:38:10:91:2B:7F:F0
- X509v3 Authority Key Identifier:
- keyid:DE:9D:6D:1F:5D:CB:37:C0:88:DD:3F:5E:FE:85:93:89:72:5D:29:DF
-
- Authority Information Access:
- CA Issuers - URI:http://url-for-aia/Intermediate.cer
-
- X509v3 CRL Distribution Points:
-
- Full Name:
- URI:http://url-for-crl/Intermediate.crl
-
- X509v3 Key Usage: critical
- Decipher Only
- X509v3 Extended Key Usage:
- TLS Web Server Authentication
- Signature Algorithm: sha256WithRSAEncryption
- ae:14:bb:a4:87:88:38:c4:9e:76:6e:9b:ff:25:7d:c3:38:d6:
- c3:51:6b:83:5d:f6:69:3b:6c:54:65:3d:b0:58:c5:63:f6:aa:
- 0d:9d:44:9d:65:3f:2b:67:79:10:49:5a:48:10:28:e5:02:19:
- 73:6b:ca:69:8e:be:71:02:c0:df:e7:17:af:a4:a6:9c:fb:49:
- 3d:c6:e5:7e:4d:35:9b:43:db:42:cd:10:a5:e4:1a:70:2d:6f:
- 96:fa:53:3c:3c:df:50:0c:50:fc:d3:af:96:b1:33:6e:c9:e0:
- 53:dc:8b:f4:59:2e:3a:88:e6:ac:81:7a:64:1c:6e:b6:6e:f7:
- cf:2d:4e:66:e8:9d:b3:1e:4e:59:3d:31:a9:2e:72:a0:ff:c9:
- 37:91:74:e1:63:b6:4a:35:bb:c5:63:23:64:ad:5c:5a:80:d2:
- e6:03:a4:44:83:3b:ff:71:d9:66:ce:3b:1d:63:f2:97:f0:06:
- 7e:1c:dc:31:b3:20:6c:68:50:40:3d:9a:e8:fe:d5:b7:0e:a0:
- 8d:3e:36:35:df:e0:57:df:d9:18:90:91:77:05:a7:11:c6:c9:
- 6c:5b:ec:55:e9:9f:73:8e:e2:98:02:e0:17:db:10:f0:03:a8:
- c9:f6:54:5d:ae:c1:ee:d3:92:50:5b:ae:55:e2:c1:d6:51:8a:
- b7:7f:76:00
------BEGIN CERTIFICATE-----
-MIIDhDCCAmygAwIBAgIBATANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDDAxJbnRl
-cm1lZGlhdGUwHhcNMTUwMTAxMTIwMDAwWhcNMTYwMTAxMTIwMDAwWjARMQ8wDQYD
-VQQDDAZUYXJnZXQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtT7tK
-jAP8cuDMSZ8sXrPmZNjDSz0E9aCAyWYc5yh+Tr99RRGBZigX4nltOZxtno11iGEB
-7QfvQyGUCgJZTZsBrOp3V7YDruLu7D0qpzDuan1YThaZfaAR9VMooE26b2zCnh+X
-Hx85UFnM0YeUH6kMUmwhtgAWXKfT+PZJjrNSECV9nR5M2782UJR7+s23S0WR9VtI
-6WnM6tAxz97PvsGWCgJLl3qzXyzg/MpCQAOlBl3OsuxsPMC/ZeaTcZKxeFoqAFYp
-WKNbpS8vFiuwPURNy884ruzCJFBvJBdrA0+L69oifv8vRDvaeB3UY7B1decP4cvW
-qgiStR2LI2Fv5ERxAgMBAAGjgeAwgd0wHQYDVR0OBBYEFGQDs55Fk9zXDpPY1hWY
-OBCRK3/wMB8GA1UdIwQYMBaAFN6dbR9dyzfAiN0/Xv6Fk4lyXSnfMD8GCCsGAQUF
-BwEBBDMwMTAvBggrBgEFBQcwAoYjaHR0cDovL3VybC1mb3ItYWlhL0ludGVybWVk
-aWF0ZS5jZXIwNAYDVR0fBC0wKzApoCegJYYjaHR0cDovL3VybC1mb3ItY3JsL0lu
-dGVybWVkaWF0ZS5jcmwwDwYDVR0PAQH/BAUDAwcAgDATBgNVHSUEDDAKBggrBgEF
-BQcDATANBgkqhkiG9w0BAQsFAAOCAQEArhS7pIeIOMSedm6b/yV9wzjWw1Frg132
-aTtsVGU9sFjFY/aqDZ1EnWU/K2d5EElaSBAo5QIZc2vKaY6+cQLA3+cXr6SmnPtJ
-Pcblfk01m0PbQs0QpeQacC1vlvpTPDzfUAxQ/NOvlrEzbsngU9yL9FkuOojmrIF6
-ZBxutm73zy1OZuidsx5OWT0xqS5yoP/JN5F04WO2SjW7xWMjZK1cWoDS5gOkRIM7
-/3HZZs47HWPyl/AGfhzcMbMgbGhQQD2a6P7Vtw6gjT42Nd/gV9/ZGJCRdwWnEcbJ
-bFvsVemfc47imALgF9sQ8AOoyfZUXa7B7tOSUFuuVeLB1lGKt392AA==
------END CERTIFICATE-----
-
-Certificate:
- Data:
- Version: 3 (0x2)
- Serial Number: 2 (0x2)
- Signature Algorithm: sha256WithRSAEncryption
- Issuer: CN=Root
- Validity
- Not Before: Jan 1 12:00:00 2015 GMT
- Not After : Jan 1 12:00:00 2016 GMT
- Subject: CN=Intermediate
- Subject Public Key Info:
- Public Key Algorithm: rsaEncryption
- Public-Key: (2048 bit)
- Modulus:
- 00:ce:e7:93:72:0a:ea:61:19:a3:1a:a6:94:26:db:
- 04:bb:49:4a:42:17:11:98:c9:d5:ce:90:19:1c:1f:
- c2:8e:19:34:2c:6a:1c:40:ab:c9:8d:dd:fc:15:2b:
- dc:30:7a:aa:cb:04:99:9b:d9:59:dd:82:31:50:60:
- e3:49:91:e8:de:9c:3b:0d:71:d4:84:2e:e6:0a:dc:
- 9d:32:3e:95:1c:16:9b:70:b6:e8:9f:ee:ee:d6:97:
- 11:ac:14:0f:1e:94:95:6d:34:c5:17:d1:09:7d:72:
- a0:27:b8:45:a4:68:21:d8:99:08:7d:5b:fa:39:12:
- 70:23:dc:68:f2:02:22:d3:38:20:0f:28:ed:4f:71:
- 63:41:e4:d2:04:9a:c1:52:45:fc:bf:5d:42:72:e1:
- 3d:b9:b4:b4:a3:5e:23:5a:42:23:c5:04:de:d1:5c:
- 91:5f:b1:b3:4a:61:c5:9c:d5:71:37:cc:1c:06:5e:
- 2e:13:40:9b:d4:be:67:9a:6d:e2:51:2e:66:8c:17:
- 6e:dd:4b:d8:87:06:22:82:99:85:58:7d:cf:06:ee:
- e8:42:6b:3d:06:06:74:c0:de:7a:18:3c:46:cb:d0:
- 64:44:6d:33:a1:9f:a8:9a:15:7e:19:77:63:75:a8:
- 7d:df:9f:65:9b:96:eb:b2:e4:cc:eb:47:fc:38:5e:
- 8d:a5
- Exponent: 65537 (0x10001)
- X509v3 extensions:
- X509v3 Subject Key Identifier:
- DE:9D:6D:1F:5D:CB:37:C0:88:DD:3F:5E:FE:85:93:89:72:5D:29:DF
- X509v3 Authority Key Identifier:
- keyid:B7:07:9B:F4:EC:BC:6D:B5:0F:F1:65:46:8E:34:AE:06:83:DF:24:81
-
- Authority Information Access:
- CA Issuers - URI:http://url-for-aia/Root.cer
-
- X509v3 CRL Distribution Points:
-
- Full Name:
- URI:http://url-for-crl/Root.crl
-
- X509v3 Key Usage: critical
- Certificate Sign, CRL Sign
- X509v3 Basic Constraints: critical
- CA:TRUE
- Signature Algorithm: sha256WithRSAEncryption
- 1c:85:38:ba:71:7e:f7:d1:e2:35:a8:89:6e:07:2c:a2:fe:ce:
- 50:06:67:49:1d:e9:80:2b:24:38:db:cc:d8:9e:05:ae:18:25:
- 84:7b:cd:1e:2f:a1:3a:ec:27:1d:cd:76:92:f9:9b:66:36:ba:
- 34:49:3d:f6:03:b0:52:43:43:4e:ed:f2:47:5f:57:a6:27:30:
- 51:81:5c:95:c6:61:02:64:3b:f4:b8:3b:bc:ca:39:76:44:8b:
- 1a:29:c0:5c:a0:12:bb:4d:4a:2e:5c:70:80:45:6b:32:1c:2e:
- 3d:8e:38:55:a1:2f:e8:f6:c1:23:a5:73:a1:ac:c0:11:c5:20:
- 56:4a:94:9a:67:a0:a5:0a:bf:f7:4f:e8:04:41:80:f7:ec:9c:
- 41:a7:cf:dd:72:ef:46:6e:97:e3:e6:ae:cf:1a:7d:73:56:26:
- 91:61:c7:b4:ec:97:b6:77:27:97:85:0f:ae:ff:67:47:e6:25:
- 54:07:a9:2b:f5:37:8e:e5:57:3c:a4:4d:a5:64:cb:0d:91:63:
- e6:f0:51:74:80:a0:bf:b4:84:bc:79:c0:84:20:6b:0b:42:15:
- 31:25:9d:69:77:61:23:01:d0:5c:5b:f1:3f:36:96:9f:82:6a:
- c2:b8:62:3a:95:c3:5d:2c:64:f7:4e:d2:cd:95:fb:a6:cf:e9:
- e2:68:86:34
------BEGIN CERTIFICATE-----
-MIIDbTCCAlWgAwIBAgIBAjANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDDARSb290
-MB4XDTE1MDEwMTEyMDAwMFoXDTE2MDEwMTEyMDAwMFowFzEVMBMGA1UEAwwMSW50
-ZXJtZWRpYXRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzueTcgrq
-YRmjGqaUJtsEu0lKQhcRmMnVzpAZHB/Cjhk0LGocQKvJjd38FSvcMHqqywSZm9lZ
-3YIxUGDjSZHo3pw7DXHUhC7mCtydMj6VHBabcLbon+7u1pcRrBQPHpSVbTTFF9EJ
-fXKgJ7hFpGgh2JkIfVv6ORJwI9xo8gIi0zggDyjtT3FjQeTSBJrBUkX8v11CcuE9
-ubS0o14jWkIjxQTe0VyRX7GzSmHFnNVxN8wcBl4uE0Cb1L5nmm3iUS5mjBdu3UvY
-hwYigpmFWH3PBu7oQms9BgZ0wN56GDxGy9BkRG0zoZ+omhV+GXdjdah9359lm5br
-suTM60f8OF6NpQIDAQABo4HLMIHIMB0GA1UdDgQWBBTenW0fXcs3wIjdP17+hZOJ
-cl0p3zAfBgNVHSMEGDAWgBS3B5v07LxttQ/xZUaONK4Gg98kgTA3BggrBgEFBQcB
-AQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91cmwtZm9yLWFpYS9Sb290LmNlcjAs
-BgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJsLWZvci1jcmwvUm9vdC5jcmwwDgYD
-VR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB
-AByFOLpxfvfR4jWoiW4HLKL+zlAGZ0kd6YArJDjbzNieBa4YJYR7zR4voTrsJx3N
-dpL5m2Y2ujRJPfYDsFJDQ07t8kdfV6YnMFGBXJXGYQJkO/S4O7zKOXZEixopwFyg
-ErtNSi5ccIBFazIcLj2OOFWhL+j2wSOlc6GswBHFIFZKlJpnoKUKv/dP6ARBgPfs
-nEGnz91y70Zul+Pmrs8afXNWJpFhx7Tsl7Z3J5eFD67/Z0fmJVQHqSv1N47lVzyk
-TaVkyw2RY+bwUXSAoL+0hLx5wIQgawtCFTElnWl3YSMB0Fxb8T82lp+CasK4YjqV
-w10sZPdO0s2V+6bP6eJohjQ=
------END CERTIFICATE-----
-
-Certificate:
- Data:
- Version: 3 (0x2)
- Serial Number: 1 (0x1)
- Signature Algorithm: sha256WithRSAEncryption
- Issuer: CN=Root
- Validity
- Not Before: Jan 1 12:00:00 2015 GMT
- Not After : Jan 1 12:00:00 2016 GMT
- Subject: CN=Root
- Subject Public Key Info:
- Public Key Algorithm: rsaEncryption
- Public-Key: (2048 bit)
- Modulus:
- 00:93:b1:b1:25:d7:e8:52:1b:b5:db:e0:fb:2e:f5:
- 58:32:36:35:6e:06:e9:a6:13:e1:f3:b0:ad:ba:88:
- c1:d7:26:c8:88:f7:77:20:5e:c2:88:5a:cc:de:8d:
- f3:43:19:7e:9a:c5:3a:fa:78:40:27:40:75:a4:00:
- 5e:a6:71:35:ef:e6:cb:e5:a5:6b:a9:05:67:d2:9d:
- bd:99:6e:18:9e:29:28:c7:87:46:dc:67:aa:44:dd:
- 03:76:ae:f7:c0:19:b7:45:37:ba:6b:ea:31:82:2f:
- 6e:5b:91:65:cd:f3:d0:fc:e8:1a:c5:7f:6d:6b:a2:
- af:13:2f:17:59:46:e2:d4:2f:13:9c:58:c8:51:35:
- ef:cb:1d:70:b6:23:28:44:ae:a4:f0:55:0a:de:69:
- 3a:27:24:58:1b:08:c4:b5:e2:92:ef:62:d1:87:07:
- 8a:f5:f1:3e:61:2a:ca:6b:27:1f:7c:d3:18:63:ea:
- 7c:3d:1f:5e:02:44:29:c7:c8:09:36:bb:c3:bc:3c:
- d1:66:04:0f:a7:e7:96:8b:bd:cc:6f:96:f6:78:1a:
- f6:8e:8f:d7:f5:1c:42:9c:46:79:65:50:df:32:9e:
- 58:e1:92:e9:4c:ec:be:48:19:12:d6:d1:1c:80:d3:
- 53:87:9a:27:b8:c7:30:87:f6:63:d5:a5:d2:d2:a5:
- 6a:57
- Exponent: 65537 (0x10001)
- X509v3 extensions:
- X509v3 Subject Key Identifier:
- B7:07:9B:F4:EC:BC:6D:B5:0F:F1:65:46:8E:34:AE:06:83:DF:24:81
- X509v3 Authority Key Identifier:
- keyid:B7:07:9B:F4:EC:BC:6D:B5:0F:F1:65:46:8E:34:AE:06:83:DF:24:81
-
- Authority Information Access:
- CA Issuers - URI:http://url-for-aia/Root.cer
-
- X509v3 CRL Distribution Points:
-
- Full Name:
- URI:http://url-for-crl/Root.crl
-
- X509v3 Key Usage: critical
- Certificate Sign, CRL Sign
- X509v3 Basic Constraints: critical
- CA:TRUE
- Signature Algorithm: sha256WithRSAEncryption
- 13:b0:bb:1d:26:db:26:9f:c0:36:6c:b0:65:82:ce:ad:0f:c0:
- 70:d6:6e:56:48:5a:23:9f:f4:df:22:8a:b0:6c:50:42:8d:03:
- 97:7f:6e:72:81:a3:69:f6:4e:74:8a:e3:73:1c:ab:08:ca:d9:
- f5:e6:85:73:fc:20:45:66:5a:4a:26:33:4e:37:4b:c5:ce:c9:
- f3:2d:0d:8b:40:fb:2e:ab:21:09:88:34:ef:c1:71:e9:6a:71:
- ed:75:8f:ee:3b:7a:fa:51:28:ea:92:2b:89:54:4f:8d:09:92:
- a1:a6:26:30:ee:d8:34:03:24:8d:55:26:fa:06:89:fb:a5:46:
- d0:c0:f9:94:15:60:7c:5a:ae:fb:e0:be:e6:28:29:e6:c2:f1:
- 8d:4b:c7:03:61:f7:3f:6e:60:b2:20:67:1c:cf:55:74:4d:ec:
- d3:c2:c2:f0:ef:e3:9c:55:48:f8:49:2a:f0:6d:10:25:be:50:
- 64:f8:3b:90:24:6b:6c:98:2c:1b:4c:db:35:1a:68:12:bf:79:
- 7f:6f:c7:65:f6:3b:31:54:8c:c4:17:bc:72:8a:48:01:8c:c2:
- 46:86:80:fb:14:63:e9:30:1b:d0:21:83:1c:71:aa:88:11:f0:
- 53:43:17:b5:ae:10:8f:d2:11:3a:7c:1c:62:2f:e3:3a:bd:e2:
- 76:81:67:68
------BEGIN TRUST_ANCHOR_UNCONSTRAINED-----
-MIIDZTCCAk2gAwIBAgIBATANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDDARSb290
-MB4XDTE1MDEwMTEyMDAwMFoXDTE2MDEwMTEyMDAwMFowDzENMAsGA1UEAwwEUm9v
-dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJOxsSXX6FIbtdvg+y71
-WDI2NW4G6aYT4fOwrbqIwdcmyIj3dyBewohazN6N80MZfprFOvp4QCdAdaQAXqZx
-Ne/my+Wla6kFZ9KdvZluGJ4pKMeHRtxnqkTdA3au98AZt0U3umvqMYIvbluRZc3z
-0PzoGsV/bWuirxMvF1lG4tQvE5xYyFE178sdcLYjKESupPBVCt5pOickWBsIxLXi
-ku9i0YcHivXxPmEqymsnH3zTGGPqfD0fXgJEKcfICTa7w7w80WYED6fnlou9zG+W
-9nga9o6P1/UcQpxGeWVQ3zKeWOGS6UzsvkgZEtbRHIDTU4eaJ7jHMIf2Y9Wl0tKl
-alcCAwEAAaOByzCByDAdBgNVHQ4EFgQUtweb9Oy8bbUP8WVGjjSuBoPfJIEwHwYD
-VR0jBBgwFoAUtweb9Oy8bbUP8WVGjjSuBoPfJIEwNwYIKwYBBQUHAQEEKzApMCcG
-CCsGAQUFBzAChhtodHRwOi8vdXJsLWZvci1haWEvUm9vdC5jZXIwLAYDVR0fBCUw
-IzAhoB+gHYYbaHR0cDovL3VybC1mb3ItY3JsL1Jvb3QuY3JsMA4GA1UdDwEB/wQE
-AwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQATsLsdJtsm
-n8A2bLBlgs6tD8Bw1m5WSFojn/TfIoqwbFBCjQOXf25ygaNp9k50iuNzHKsIytn1
-5oVz/CBFZlpKJjNON0vFzsnzLQ2LQPsuqyEJiDTvwXHpanHtdY/uO3r6USjqkiuJ
-VE+NCZKhpiYw7tg0AySNVSb6Bon7pUbQwPmUFWB8Wq774L7mKCnmwvGNS8cDYfc/
-bmCyIGccz1V0TezTwsLw7+OcVUj4SSrwbRAlvlBk+DuQJGtsmCwbTNs1GmgSv3l/
-b8dl9jsxVIzEF7xyikgBjMJGhoD7FGPpMBvQIYMccaqIEfBTQxe1rhCP0hE6fBxi
-L+M6veJ2gWdo
------END TRUST_ANCHOR_UNCONSTRAINED-----
-
-150302120000Z
------BEGIN TIME-----
-MTUwMzAyMTIwMDAwWg==
------END TIME-----
-
-SUCCESS
------BEGIN VERIFY_RESULT-----
-U1VDQ0VTUw==
------END VERIFY_RESULT-----
-
-serverAuth
------BEGIN KEY_PURPOSE-----
-c2VydmVyQXV0aA==
------END KEY_PURPOSE-----

Powered by Google App Engine
This is Rietveld 408576698