unity – acer laptop left control key not recognized ubuntu 18.04

I recently bought a used Acer Aspire ES1-511 with Ubuntu 16.04. I've found that the left Ctrl key does not work, but the right one does. in the xev I found that the left button showed FocusOut and FocusIn events as they were pressed, and had the right (right) KeyPress and KeyRelease events. I looked at the settings for the link and could not find anything. I looked at the keyboard configuration and could not find anything. I upgraded to Ubuntu 18.04.2 LTS, it did not make any difference. I was looking for the Show Keyboard Layout utility, it's nowhere to be found. In fact, there is no menu option in the title bar for changing the keyboard language, as stated at https://linoxide.com/linux-how -to / configure-keyboard-ubuntu / I've tried to reset all keyboard shortcuts, it makes no difference. If I transfer to another virtual terminal, by z. Ctrl-Alt-F3, The Key combination is detected and Ctrl-C works as expected at the command prompt.

Pretty clear something in the GUI, the behavior of the left Ctrl key changes, but I could not identify What makes it.

For the left Ctrl key xev shows this issue:

FocusOut event, serial 34, synthetic NO, window 0x3000001,
    mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 34, synthetic NO, window 0x3000001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 34, synthetic NO, window 0x0,
    keys:  2   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0

For the right Ctrl key xev shows this issue:

KeyPress event, serial 34, synthetic NO, window 0x3000001,
    root 0x13e, subw 0x0, time 3247932, (96,-19), root:(1249,175),
    state 0x0, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 37, synthetic NO, window 0x3000001,
    root 0x13e, subw 0x0, time 3248126, (96,-19), root:(1249,175),
    state 0x4, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

Other information:

$ kbdcontrol
kbdcontrol: command not found

$ console-setup
console-setup: command not found

$ cat /etc/default/keyboard
# KEYBOARD CONFIGURATION FILE

# Consult the keyboard(5) manual page.

XKBMODEL="acer_laptop"
XKBLAYOUT="us"
XKBVARIANT=""
XKBOPTIONS=""

BACKSPACE="guess"

$ xmodmap -pm
xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Alt_R (0x6c),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3      
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)

$ uname -a
Linux acer-Aspire-ES1-511 4.15.0-54-generic #58-Ubuntu SMP Mon Jun 24 10:55:24 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

What additional information should I provide?

Encryption – How exactly does the key derivation of FBE work?

The following files are used, as I know, to validate a user's password:

/data/system/gatekeeper.password.key
/data/system/gatekeeper.pattern.key
/data/system/locksettings.db
/data/system/locksettings.db-shm
/data/system/locksettings.db-wal

I know that the files used for the FBE key are stored here:

/data/misc/vold/user_keys/ce/0/current/version
/data/misc/vold/user_keys/ce/0/current/secdiscardable
/data/misc/vold/user_keys/ce/0/current/encrypted_key
/data/misc/vold/user_keys/ce/0/current/stretching
/data/misc/vold/user_keys/de/0/encrypted_key
/data/misc/vold/user_keys/de/0/stretching
/data/misc/vold/user_keys/de/0/keymaster_key_blob
/data/misc/vold/user_keys/de/0/secdiscardable
/data/misc/vold/user_keys/de/0/version

Although I've been told that the encrypted FBE keys are stored in the above paths, these files seem to be related:

/data/system_de/0/spblob/0000000000000000.handle
/data/system_de/0/spblob/XXXXXXXXXXXXXXXX.pwd
/data/system_de/0/spblob/XXXXXXXXXXXXXXXX.secdis
/data/system_de/0/spblob/XXXXXXXXXXXXXXXX.spblob

The XXXXXXXXXXXXXXXX is a placeholder for a 16-character hexadecimal handle; 0000000000000000.handleIn contrast, it says exactly as it is written. There are actually several sets of pwd/secdis/spblob Files on my phone and two missing spblob File. I'm not sure if I should have so many.

In the last few days, I messed up my phone and tried to get TWRP to decrypt my data. After removing my password, I could not set anything else first, as the settings would crash on every attempt. I could fix it by renaming it locksettings.db, Then I set and deleted several (but very insecure) passwords / PINs, including my old one (which is secure). I can not remember the order of events, but now I am at a point where I receive them Pixel is starting Whenever I wipe on my home screen after booting. I suspect that this is because my FBE key can not be decrypted. I wonder if my combination pleases renaming files gatekeeper.*.key and locksettings.db that the FBE key may have been decrypted with the wrong key and then re-encrypted with another one.

I want to know what role the above files play in encrypting my phone. I would also like to know:

  • Which data from which sources are combined with which algorithms to decrypt the keys that encrypt my phone.
  • What happens if the password is changed (eg which files are decrypted / re-encrypted, if the salt is changed, etc.).
  • Like the files gatekeeper.*.key and locksettings.db used in the process.
  • Whether the FBE key ever changes with the password or not.

The purpose of all this is to find out if the problem with my encryption key is wrong or if it's about cleaning up the right files and overcoming the endless Pixel is starting Message to my apps and content.

electrum – Convert EC PRIVATE KEY from .pem to WIF

I have an OpenSSL generated private key in the following form:

$ cat priv.pem
-----BEGIN EC PARAMETERS-----
BgUrgQQACg==
-----END EC PARAMETERS-----
-----BEGIN EC PRIVATE KEY-----
MHQCAQEEIIf4sqrjoA54l+efQUY1VvahcQ9bFqq2NWeIiWXF9GCGoAcGBSuBBAAK
oUQDQgAEYVjziHLwOcN48h4tg/v6ewhjQu29sAkyiDAUeJ+BYB2Ibuz5ZicQle8P
QFmCtQ8Y6NgEjoNOURwMJ+ufffff==
-----END EC PRIVATE KEY-----

How can I convert this (preferably with Bash / Perl / Python) to a WIF that can be imported into (preferably) Electrum? Electrum also confuses me a bit, they say

WIF keys are typed in Electrum, based on script type.

A few examples:
p2pkh:KxZ...->
1Dck

What does that mean? The wallet import format says nothing about typing

Wallet – Get my private key

I want to understand. I do not want to make money from mining.
(I have a server without a GPU)

I have done the following:

I have downloaded, created and installed bitcoin source code from github.

It seems to work because I can interact with bitcoind with the bitcoin-cli command.

I know that this is not a good practice, but I want to "see" my private key.

I've read several documentaries and tutorials and they said I need to generate an address first and then call the dumpprivkey method.

Like this:

$ bitcoin-cli getnewaddress
xxxxxxx

$ bitcoin-cli dumpprivkey xxxxxxx

I do not understand, but if I repeat this process twice, I get 2 different private keys.

So that's not the private key I'm looking for … What are these private keys?

Many thanks

gnupg – What should I do next on my GPG key after my computer has been confiscated by the agency?

Unfortunately, my keys are protected by a password, but unfortunately not strong enough. I assume that I have now lost control of all my private keys. I still have a backup of my private keys. For privacy reasons, I would like to know if I should generate a new subkey from my old passkey and revoke the other old subkeys, or if I should generate a completely new key and sign my new key with the old key and then revoke the old key? Also, my old key is in the "strong group" of WoT. If I generate a new key, do I have to start the trust network again?

Plugins – Posting Posts by Meta Key (Using ACF)

Hey, I use ACF in the media library and want to sort media by meta key (which is actually created by ACF). BUT it does not work.

Here is the code:

$gallery_imgs = get_posts(array(
'post_type'         => 'attachment',
'posts_per_page'    => -1,
'post_mime_type'    => 'image',
'post_status'       => 'inherit',
'meta_key'      => 'serial_no',
'orderby'       => 'meta_value', //or 'meta_value_num'
'order'         => 'ASC',
'tax_query'         => array(
    array(
        'taxonomy'  => 'gallery_ct_artist_cat',
        'field'     => 'term_id',
        'terms'     => $artist_id
     )
)

));

For reference, please visit this link.http: //185.94.230.80/~wwwdevatta/artist-collection/294/

Private key – Bitcoin kernel query, initialization vector

I'm checking the bitcoin core source code. I follow the code that states that a duplicate sha 256 of the public key is required to obtain the IV and to use the master key for the encryption key for the encrypted wallet.dat file. So I did the following:
1. Set the passphrase for my walltt.dat file.
2. Has taken a Double Sha 256 for the compressed public key
3. Enter the passkey as the encryption key
4. Places the encrypted private key as input data.

I'm not getting the already calculated private key in my dumpwallet file. Did I miss a parameter for the above calculation?

I've also retrieved IV and Key from Github's running compiled program. The values ​​do not match those calculated manually. Thanks for the help in advance.

Javascript – RESET key by sending the form [DUPLICADO]

I have a form with 3 inputs and the button. The idea is that the button is disabled when the inputs are empty. When I stop on the form, the button is disabled and will not be activated until the inputs are complete. However, when I click on the form, the information is saved and reset because the following is true in the Send event: e.preventDefault.

What I do not achieve is the following:
If you have sent the form, it will be reset, but the button is not disabled. And the fields are empty. How would they achieve that? I did a lot of research and I do not understand the solution. I use this code.
I would like the help.

 $("input(type='text')").change(function(){
            let button = $('#buttom').prop('disabled', true);

            let buttonDisabled = $('#id').val() =='' || $('#name').val() =='' || $('#surname').val() =='';
            if (buttonDisabled !== true){
                $('#buttom').prop('disabled', false);//HABILITADO
            }else{
                $('#buttom').prop('disabled', true);//INHABILITADO
            }
        });