mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-13 07:45:54 +00:00
69 lines
2.3 KiB
Plaintext
69 lines
2.3 KiB
Plaintext
<%@ page class="DebugPassphrasePage" %>
|
|
<%@ page form="true" %>
|
|
<%@ page baseClass="SessionHTTPRequestHandler" %>
|
|
<%@ page ctorArg="Session*" %>
|
|
<%@ header include="HTTPInterface/SessionHTTPRequestHandler.h" %>
|
|
<%!
|
|
#include "Crypto/KeyPairEd25519.h"
|
|
#include "controller/User.h"
|
|
%>
|
|
<%%
|
|
const char* pageName = "Debug Passphrase";
|
|
|
|
KeyPairEd25519* keys = nullptr;
|
|
std::string privKeyCryptedHex = "";
|
|
Poco::UInt64 pwdHashed = 0;
|
|
Poco::AutoPtr<controller::User> existingUser;
|
|
if(!form.empty()) {
|
|
auto passphrase_string = form.get("passphrase", "");
|
|
auto wordSource = Passphrase::detectMnemonic(passphrase_string);
|
|
if(!wordSource) {
|
|
addError(new Error("debug Passphrase", "invalid passphrase"), false);
|
|
} else {
|
|
keys = KeyPairEd25519::create(Passphrase::create(passphrase_string, wordSource));
|
|
}
|
|
auto email = form.get("email", "");
|
|
|
|
if(email != "") {
|
|
existingUser = controller::User::create();
|
|
if(1 == existingUser->load(email)) {
|
|
auto user_model = existingUser->getModel();
|
|
pwdHashed = user_model->getPasswordHashed();
|
|
if(user_model->hasPrivateKeyEncrypted()) {
|
|
privKeyCryptedHex = user_model->getPrivateKeyEncryptedHex();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
%><%@ include file="include/header_old.cpsp" %>
|
|
<div class="grd_container">
|
|
<h1>Debug Passphrase</h1>
|
|
<%= getErrorsHtml() %>
|
|
<form method="POST">
|
|
<fieldset class="grd_container_small">
|
|
<legend>Userdata</legend>
|
|
<p class="grd_small">
|
|
<label for="email">E-Mail</label>
|
|
<input id="email" type="email" name="email" value="<%= !form.empty() ? form.get("email") : "" %>"/>
|
|
</p>
|
|
<textarea style="width:100%;height:100px" name="passphrase"><%= !form.empty() ? form.get("passphrase", "") : "" %></textarea>
|
|
</fieldset>
|
|
<input class="grd-form-bn grd-form-bn-succeed" type="submit" name="submit" value="Debug">
|
|
</form>
|
|
<% if(keys) { %>
|
|
<p>Public key:<br><%= keys->getPublicKeyHex() %></p>
|
|
<p>Private key crypted:<br><%= privKeyCryptedHex %></p>
|
|
<p>Passwort Hashed:<br><%= std::to_string(pwdHashed) %></p>
|
|
<% if(!existingUser.isNull()) {
|
|
auto userModel = existingUser->getModel();
|
|
auto dbPubkey = userModel->getPublicKey();
|
|
%>
|
|
<p>user Public: <br><%= keys->getPublicKeyHex() %></p>
|
|
<% } %>
|
|
<% } %>
|
|
</div>
|
|
<% if(keys) delete keys; %>
|
|
<%@ include file="include/footer.cpsp" %>
|