Commit Graph

236 Commits

Author SHA1 Message Date
El RIDO c4b84b2b6b
extract version logic into paste & comment classes 2019-05-25 13:20:39 +02:00
El RIDO d73c68ad85
insert Paste class to wrap the data, to be able to extend the paste with getters and format version handling 2019-05-25 10:10:59 +02:00
El RIDO b44e729a1a
fixing display of version 1 pastes without attachments 2019-05-19 13:31:17 +02:00
El RIDO 353d08daf6
handle regression due to base58 stripping NULL bytes, discovered via JSVerify RNG state 0dec6b2a5f04d19873 2019-05-19 09:54:40 +02:00
El RIDO 3b0ab7e99f
fixing regression handling v1 key format (un-decoded base64) 2019-05-19 08:36:18 +02:00
El RIDO 6f480bf014
Merge branch 'master' into webcrypto, implementing base58, fixes #377 2019-05-15 21:20:54 +02:00
El RIDO 09162a3c57
fix display of v2 pastes in JS, fixing parsing of comments in PHP, avoid exposing expiration date (we provide time_to_live, would allow calculation of creation date of paste) 2019-05-15 07:44:03 +02:00
El RIDO cc1c55129f
switching to full JSON API without POST array use, ensure all JSON operations are done with error detection 2019-05-13 22:31:52 +02:00
El RIDO 50af37507f
fixing v2 TTL 2019-05-11 10:46:30 +02:00
El RIDO 788ea67b49
fixing server interaction in JS, simple pastes now work 2019-05-11 10:39:42 +02:00
El RIDO 0f42bd818f
quiescing JS unit tests 2019-05-10 21:01:34 +02:00
Harald Leithner 4aab3c0061 Encode key as base58 2019-05-08 15:25:42 +02:00
El RIDO 5652a43d1d
adding js test to generate v2 example pastes to be used in the development of the server side logic, adding one of these into the helper class of the php tests 2019-04-16 07:45:04 +02:00
El RIDO e418b083e8
Merge branch 'master' into webcrypto 2019-01-22 20:11:42 +01:00
rugk c2a46b7af7
Make JS function more robust 2019-01-22 00:07:28 +01:00
El RIDO 79a858f176
extracting only the 16 hex characters of the query string as paste ID, addressing #396 2019-01-20 12:20:37 +01:00
El RIDO 0ee86f33da
key in version 2 is raw value instead of base64 (which reduces its complexity), made PasteDecryptor support both versions of the format, refactoring method names, replacing var by let / const, reducing zlib compression level from 9 to 7 to half the time spent on compression 2018-12-29 18:40:59 +01:00
El RIDO be69e4a50f
simplify password catenation in version 2, to avoid potential key derivation weakening 2018-12-28 05:49:34 +01:00
El RIDO 0ad5b3e900
implement zlib via web assembly, replacing rawdeflate library 2018-12-27 21:32:13 +01:00
El RIDO 5ce3aa2817
increase PBKDF2 iterations further, as suggested in #350 2018-12-25 20:19:57 +01:00
El RIDO 0ab06e34ec
initial refactoring for support of version 2 paste format, some cleanup on the side 2018-12-25 17:34:39 +01:00
El RIDO 5b00f4ead7
further code deduplication 2018-10-20 23:08:13 +02:00
El RIDO 4c3fb3fe63
reduce code duplication 2018-10-20 22:34:36 +02:00
El RIDO 717e5b0e57
addressing issues found by codacy 2018-10-20 22:05:35 +02:00
El RIDO 0f76b9066d
remove SJCL library 2018-10-20 19:53:21 +02:00
El RIDO 2d7996570e
typos, documentation 2018-10-20 17:57:21 +02:00
El RIDO 2929d5c17a
fixing async comment nicknames 2018-10-20 13:54:17 +02:00
El RIDO a08fed1add
ensure promises can be collected 2018-10-20 12:40:08 +02:00
El RIDO 35045bb69a
improving error handling 2018-10-20 11:40:37 +02:00
El RIDO 100d955e1a
address decryptComments() async compatibility 2018-10-20 10:20:32 +02:00
El RIDO ff8ec5a1a0
address decryptOrPromptPassword(), decryptPaste() and decryptAttachment() async compatibility 2018-10-20 09:56:05 +02:00
rugk 17131f3172
Add verys important return to ensure Promise chain works 2018-10-08 21:04:13 +02:00
rugk 746debf586
Adjust functions using Uploader.setData to handle promises 2018-10-08 21:03:10 +02:00
rugk 94a352e7f5
Fix eslint config and issues
Note EcmaScript 2017 looks recent amd also is, e.g. we loose suport for IE and we loose support for some Android browsers, also Android <5 built-in browser.
2018-10-08 20:36:50 +02:00
El RIDO b191e2c437
Merge remote-tracking branch 'origin/master' into webcrypto 2018-09-02 10:07:57 +02:00
El RIDO 8b71cb0b2f
properly escaping HTML in raw text mode, fixes #358 2018-09-02 09:14:36 +02:00
El RIDO b97ac08003
improving tests, correcting cipher 2018-09-01 22:22:10 +02:00
El RIDO 0dbbb61d11
implementing web crypto API for encryption 2018-09-01 19:42:22 +02:00
El RIDO bd6888687f
Merge branch 'master' into webcrypto 2018-08-14 06:59:47 +02:00
El RIDO b5ebc4a3d7
incrementing version 2018-08-11 19:29:58 +02:00
El RIDO 10201dc463
expanded unit tests to cover mega links, reverted regex to old one, but fixed to cover mega links, just to prove it works 2018-08-11 07:33:33 +02:00
El RIDO c468b74b9b
Merge branch 'master' into linkregex 2018-08-11 06:56:02 +02:00
El RIDO c4fc7edc43
replacing Base64.js with browser built in's, except for legacy paste support 2018-08-05 08:56:03 +02:00
El RIDO 6f25d651b7
switching to client side libraries for key generation, remove legacy browser support 2018-08-04 22:30:01 +02:00
El RIDO c9a3bb08ee
remove dead code 2018-08-04 17:49:08 +02:00
El RIDO 4f332b7719
revert legacy browser support, dropped in favour of webcrypto API 2018-08-04 17:25:59 +02:00
El RIDO 0319a16b15
support older browsers correctly and ensure the paranoia setting for the sjcl.random.isReady call matches paranoia level 10 instead of the default 6 2018-08-04 13:25:31 +02:00
El RIDO 1be1047a94
while we do start the collection of randomness even before initializing our logic, raising the 'paranoia' parameter to 10 ensures that in legacy browsers not yet supporting the webcrypto API we would get an exception, instead of a weak key 2018-08-01 21:56:23 +02:00
El RIDO e2c04e13e8
fixing doc block for jsdoc 2018-07-22 10:24:39 +02:00
El RIDO 3fecd0f2ce correct page template & password prompt/modal, fixes #341, remove JS map reference leading to unnecessary load error 2018-07-21 06:44:04 +00:00