├── ext
├── Spritesheet-01.png
├── css
│ ├── table-background.png
│ ├── shadowcrypt-colors.css
│ └── style.css
├── manifest.json
├── options.html
├── background.js
├── sjcl.js
├── options.js
├── shadowcrypt.js
└── jquery
│ └── jquery-2.1.0.min.js
├── jquerytest.htm
└── design.htm
/ext/Spritesheet-01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunblaze-ucb/shadowcrypt/HEAD/ext/Spritesheet-01.png
--------------------------------------------------------------------------------
/ext/css/table-background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunblaze-ucb/shadowcrypt/HEAD/ext/css/table-background.png
--------------------------------------------------------------------------------
/ext/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "manifest_version": 2,
3 | "name": "ShadowCrypt",
4 | "version": "0.3.3",
5 |
6 | "content_scripts": [
7 | {
8 | "matches": [" Hello world! basic text =?zerokit-1ed6ba13a44a74b4cc151f69e23007d636771723f7059ae730213befeccefa20?9XuAhLWwhYpfkevRGlqLFGgwcAzO2fGSbquvf4fy??= test
...
you said:
and now the html test: "=?zerokit-1ed6ba13a44a74b4cc151f69e23007d636771723f7059ae730213befeccefa20?GN5UWt36lmy6TxO/tx+k1zo6PT/af0rwd7vjNiMWHg92MEgKeDhnLnjHQCPr8ScdsJMVgQy+RrssLB8HQw==?#foo,@bar?=" good luck
15 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /ext/css/shadowcrypt-colors.css: -------------------------------------------------------------------------------- 1 | /* Shadowcrypt colors */ 2 | 3 | .shadowcrypt-key.shadowcrypt-color-1 { 4 | background-position: 0 -25px; 5 | } 6 | 7 | .shadowcrypt-key.shadowcrypt-color-2 { 8 | background-position: 0 -50px; 9 | } 10 | 11 | .shadowcrypt-key.shadowcrypt-color-3 { 12 | background-position: 0 -75px; 13 | } 14 | 15 | .shadowcrypt-key.shadowcrypt-color-4 { 16 | background-position: 0 -100px; 17 | } 18 | 19 | .shadowcrypt-key.shadowcrypt-color-5 { 20 | background-position: 0 -125px; 21 | } 22 | 23 | .shadowcrypt-key.shadowcrypt-color-6 { 24 | background-position: 0 -150px; 25 | } 26 | 27 | .shadowcrypt-locked.shadowcrypt-color-0 .shadowcrypt-lock { 28 | background-position: -120px 0; 29 | } 30 | 31 | .shadowcrypt-locked.shadowcrypt-color-1 .shadowcrypt-lock { 32 | background-position: -120px -40px; 33 | } 34 | 35 | .shadowcrypt-locked.shadowcrypt-color-2 .shadowcrypt-lock { 36 | background-position: -120px -80px; 37 | } 38 | 39 | .shadowcrypt-locked.shadowcrypt-color-3 .shadowcrypt-lock { 40 | background-position: -120px -120px; 41 | } 42 | 43 | .shadowcrypt-locked.shadowcrypt-color-4 .shadowcrypt-lock { 44 | background-position: -160px 0; 45 | } 46 | 47 | .shadowcrypt-locked.shadowcrypt-color-5 .shadowcrypt-lock { 48 | background-position: -160px -40px; 49 | } 50 | 51 | .shadowcrypt-locked.shadowcrypt-color-6 .shadowcrypt-lock { 52 | background-position: -160px -80px; 53 | } 54 | 55 | .shadowcrypt-locked.shadowcrypt-color-0 .shadowcrypt-label, 56 | .shadowcrypt-key-name.shadowcrypt-color-0 { 57 | color: #339999; 58 | } 59 | 60 | .shadowcrypt-locked.shadowcrypt-color-0 .shadowcrypt-input { 61 | border-color: #339999; 62 | box-shadow: inset 0 0 5px #339999; 63 | } 64 | 65 | .shadowcrypt-locked.shadowcrypt-color-1 .shadowcrypt-label, 66 | .shadowcrypt-key-name.shadowcrypt-color-1 { 67 | color: #336699; 68 | } 69 | 70 | .shadowcrypt-locked.shadowcrypt-color-1 .shadowcrypt-input { 71 | border-color: #336699; 72 | box-shadow: inset 0 0 5px #336699; 73 | } 74 | 75 | .shadowcrypt-locked.shadowcrypt-color-2 .shadowcrypt-label, 76 | .shadowcrypt-key-name.shadowcrypt-color-2 { 77 | color: #666699; 78 | } 79 | 80 | .shadowcrypt-locked.shadowcrypt-color-2 .shadowcrypt-input { 81 | border-color: #666699; 82 | box-shadow: inset 0 0 5px #666699; 83 | } 84 | 85 | .shadowcrypt-locked.shadowcrypt-color-3 .shadowcrypt-label, 86 | .shadowcrypt-key-name.shadowcrypt-color-3 { 87 | color: #ad4977; 88 | } 89 | 90 | .shadowcrypt-locked.shadowcrypt-color-3 .shadowcrypt-input { 91 | border-color: #ad4977; 92 | box-shadow: inset 0 0 5px #ad4977; 93 | } 94 | 95 | .shadowcrypt-locked.shadowcrypt-color-4 .shadowcrypt-label, 96 | .shadowcrypt-key-name.shadowcrypt-color-4 { 97 | color: #d1ae4a; 98 | } 99 | 100 | .shadowcrypt-locked.shadowcrypt-color-4 .shadowcrypt-input { 101 | border-color: #d1ae4a; 102 | box-shadow: inset 0 0 5px #d1ae4a; 103 | } 104 | 105 | .shadowcrypt-locked.shadowcrypt-color-5 .shadowcrypt-label, 106 | .shadowcrypt-key-name.shadowcrypt-color-5 { 107 | color: #996633; 108 | } 109 | 110 | .shadowcrypt-locked.shadowcrypt-color-5 .shadowcrypt-input { 111 | border-color: #996633; 112 | box-shadow: inset 0 0 5px #996633; 113 | } 114 | 115 | .shadowcrypt-locked.shadowcrypt-color-6 .shadowcrypt-label, 116 | .shadowcrypt-key-name.shadowcrypt-color-6 { 117 | color: #666666; 118 | } 119 | 120 | .shadowcrypt-locked.shadowcrypt-color-6 .shadowcrypt-input { 121 | border-color: #666666; 122 | box-shadow: inset 0 0 5px #666666; 123 | } 124 | -------------------------------------------------------------------------------- /ext/options.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |Delete key " + name + "?
", function(){ 182 | deleteKey(domain, key, url); 183 | hideKeyDialog(); 184 | }); 185 | }); 186 | }); 187 | 188 | var hover = false; 189 | 190 | keyButton.hover(function(){ 191 | hover=true; 192 | globalHoverCounter++; 193 | setTimeout(function(){ 194 | if (hover) { 195 | keysTable.addClass("tooltip-active"); 196 | } 197 | }, 1000); 198 | }, function(){ 199 | hover=false; 200 | globalHoverCounter--; 201 | setTimeout(function(){ 202 | if (globalHoverCounter == 0 ) { 203 | keysTable.removeClass("tooltip-active"); 204 | } 205 | }, 200); 206 | }); 207 | 208 | domain.keysHolder.append(keyButton); 209 | } 210 | 211 | function createDomainUI(domain, url){ 212 | // Create domain editor row. 213 | var protocolIndex = url.indexOf("://"); 214 | 215 | if (protocolIndex > -1) { 216 | protocolIndex += 3; 217 | } else { 218 | protocolIndex = 0; 219 | } 220 | 221 | var displayName = url.substr(protocolIndex); 222 | var row = $("