diff --git a/.tools/visual-tests/visual-record.js b/.tools/visual-tests/visual-record.js index 52e4bd41c1..f5880b47c6 100644 --- a/.tools/visual-tests/visual-record.js +++ b/.tools/visual-tests/visual-record.js @@ -173,10 +173,10 @@ async function createScreenshots(page, screenshotName) { await processScreenshot(page, screenshotName.replace('.png', '--dark.png')); } -async function logIntoBackend(page, username = 'myusername', password = '91dfd9ddb4198affc5c194cd8ce6d338fde470e2') { +async function logIntoBackend(page, username = 'myusername', password = 'mypassword') { await goToUrlOrThrow(page, START_URL, { waitUntil: 'load' }); await page.type('#rex-id-login-user', username); - await page.type('#rex-id-login-password', password); // sha1('mypassword') + await page.type('#rex-id-login-password', password); await Promise.all([ page.waitForNavigation({ waitUntil: 'load' }), page.$eval('#rex-form-login', form => form.submit()), diff --git a/assets/sha1.js b/assets/sha1.js deleted file mode 100644 index 2d90e6614b..0000000000 --- a/assets/sha1.js +++ /dev/null @@ -1,12 +0,0 @@ -/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ -/* SHA-1 implementation in JavaScript | (c) Chris Veness 2002-2010 | www.movable-type.co.uk */ -/* - see http://csrc.nist.gov/groups/ST/toolkit/secure_hashing.html */ -/* http://csrc.nist.gov/groups/ST/toolkit/examples.html */ -/* http://www.movable-type.co.uk/scripts/sha1.html */ -/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ -var Sha1={}; -Sha1.hash=function(b,a){if(a=typeof a=="undefined"?true:a)b=Utf8.encode(b);var g=[1518500249,1859775393,2400959708,3395469782];b+=String.fromCharCode(128);for(var c=Math.ceil((b.length/4+2)/16),h=Array(c),e=0;e>>32-a};Sha1.toHexStr=function(b){for(var a="",g,c=7;c>=0;c--){g=b>>>c*4&15;a+=g.toString(16)}return a};var Utf8={}; -Utf8.encode=function(b){b=b.replace(/[\u0080-\u07ff]/g,function(a){a=a.charCodeAt(0);return String.fromCharCode(192|a>>6,128|a&63)});return b=b.replace(/[\u0800-\uffff]/g,function(a){a=a.charCodeAt(0);return String.fromCharCode(224|a>>12,128|a>>6&63,128|a&63)})}; -Utf8.decode=function(b){b=b.replace(/[\u00e0-\u00ef][\u0080-\u00bf][\u0080-\u00bf]/g,function(a){a=(a.charCodeAt(0)&15)<<12|(a.charCodeAt(1)&63)<<6|a.charCodeAt(2)&63;return String.fromCharCode(a)});return b=b.replace(/[\u00c0-\u00df][\u0080-\u00bf]/g,function(a){a=(a.charCodeAt(0)&31)<<6|a.charCodeAt(1)&63;return String.fromCharCode(a)})}; diff --git a/boot/backend.php b/boot/backend.php index 0f5e4e78e6..cd5f7a7205 100644 --- a/boot/backend.php +++ b/boot/backend.php @@ -150,9 +150,7 @@ if (($rexUserLogin || $passkey) && !CsrfToken::factory('backend_login')->isValid()) { $loginCheck = I18n::msg('csrf_token_invalid'); } else { - // the server side encryption of pw is only required - // when not already encrypted by client using javascript - $login->setLogin($rexUserLogin, $rexUserPsw, Request::post('javascript', 'boolean')); + $login->setLogin($rexUserLogin, $rexUserPsw); $login->setPasskey('' === $passkey ? null : $passkey); $login->setStayLoggedIn($rexUserStayLoggedIn); $loginCheck = $login->checkLogin(); @@ -234,7 +232,6 @@ Asset::addJsFile(Url::coreAssets('jquery-ui.custom.min.js'), [Asset::JS_IMMUTABLE => true]); Asset::addJsFile(Url::coreAssets('jquery-pjax.min.js'), [Asset::JS_IMMUTABLE => true]); Asset::addJsFile(Url::coreAssets('standard.js'), [Asset::JS_IMMUTABLE => true]); -Asset::addJsFile(Url::coreAssets('sha1.js'), [Asset::JS_IMMUTABLE => true]); Asset::addJsFile(Url::coreAssets('clipboard-copy-element.js'), [Asset::JS_IMMUTABLE => true]); Asset::addJsFile(Url::coreAssets('js/mediapool.js'), [Asset::JS_IMMUTABLE]); diff --git a/pages/login.php b/pages/login.php index 983bce57b4..e869e1e1ea 100644 --- a/pages/login.php +++ b/pages/login.php @@ -53,7 +53,7 @@ function disableLogin() { $content .= '
- '; +'; $formElements = []; @@ -132,15 +132,6 @@ function disableLogin() {