Multi Touch Gestures on Linux

Hello, I’ve been using Linux full time on my work laptop and one thing that I really miss from the Macbook is the multi touch gestures. I often find myself swiping 3 fingers up the trackpad to see all my open applications and nothing happens, bummer. Then, I came across Fusuma, a great project which aims to bring multi touch gesture support to Linux laptops! It won’t give you an Apple like experience but it’s okay-ish....

May 3, 2020 · 1 min · Denis Nuțiu

LeetCode: Arrays 101: Inserting Items Into an Array

Hello, Here are my solutions for the second part of the card: Arrays 101, from LeetCode. Duplicate Zeroes Given an array of integers, remove duplicate zeroes and shift the remaining elements. class Solution: def duplicateZeros(self, arr: List[int]) -> None: """ Do not return anything, modify arr in-place instead. """ index = 0 arr_length = len(arr) while index < arr_length: if arr[index] == 0: arr.insert(index, 0) arr.pop() index += 1 index += 1 Merge Sorted Array Given two sorted arrays, merge them together into nums1....

April 30, 2020 · 2 min · Denis Nuțiu

LeetCode: Arrays 101: Introduction &#8211; Solutions

Hello, LeetCode is a good place to practice programming by solving problems of all levels! After you solve a problem, you’ll get access to all submitted solutions, sorted by time and memory usage. That’s a nice way to compare your code to others and see what you did well and where you can improve. Here’s my solutions for the Arrays 101: Introduction card: Max Consecutive Ones class Solution: def findMaxConsecutiveOnes(self, nums: List[int]) -> int: max_counter = 0 counter = 0 for i in nums: if i == 1: counter += 1 else: if counter > max_counter: max_counter = counter counter = 0 if counter > max_counter: max_counter = counter return max_counter Find Numbers with Even Number of Digits class Solution: @staticmethod def is_even(value): return len(str(value)) % 2 == 0 def findNumbers(self, nums: List[int]) -> int: return_value = 0 for number in nums: if self....

April 26, 2020 · 2 min · Denis Nuțiu

Nucu Car: Devlog 0x02

Hello, I’m still working on my NucuCar project from time to time, I’m currently at my parents home and I left the raspberry pi at my apartment so I’m only testing the builds it on my computer. Luckily I can test the telemetry by using the CPU temperature sensor implemented by dotnet IoT. For the next step, I wanted an effective way to store telemetry data in the cloud, preferably for free, since this is a hobby project after all....

April 19, 2020 · 3 min · Denis Nuțiu

LeetCode: Add Two Numbers Python 3 iterative solution

[Problem Link] Hello, Here’s my solution for the add two numbers problem on LeetCode. Example: <strong>Input:</strong> (2 -> 4 -> 3) + (5 -> 6 -> 4) <strong>Output:</strong> 7 -> 0 -> 8 <strong>Explanation:</strong> 342 + 465 = 807. When doing problems on websites such as LeetCode, I like to code in my own IDE, that’s why you’ll see some additional helper functions besides the solution code. class Solution(object): def _get_append_func(self, root): _root = root def __add_to_list(value): nonlocal _root _root....

March 15, 2020 · 2 min · Denis Nuțiu

Firebase REST Authentication

Hello, In this article I will show you how to authenticate to Firebase and secure the databases with some simple security rules. I’m using this setup for my NucuCar project. Authentication The first step is to enable the Email/Password sign in method, by going to the Authentication and clicking the Sign-In Method tab: Next, we can add a manual user by clicking Users tab and Add user. Now, to login with our newly created user, we make a POST request with a json body to the following endpoint:...

March 14, 2020 · 2 min · Denis Nuțiu

Brute-forcing passwords with Hydra

Hello, In this article you will find the solutions for the Hydra room on Try Hack Me. Link: Almost every bruteforcing or cracking task from HackTheBox/TryHackMe uses the rockyou.txt wordlist. You can google it and download it, if you can’t find it in your Kali distro under the path /usr/share/wordlists/rockyou.txt.gz If you’re using Kali then you have Hydra already installed, all you have to do is run two commands: Flag 1 Run the following command, the password should be cracked in less than one minute....

February 29, 2020 · 1 min · Denis Nuțiu

picoCTF2019 Reverse Engineering Asm

Hello, here’s my take on the picoCTF2019 reverse engineering asm challenges. If you don’t know assembly, please watch a few tutorials on it: asm1 – Points: 200 CMP: Compares the first source operand with the second source operand and sets the status flags in the EFLAGS register according to the results. The comparison is performed by subtracting the second operand from the first operand and then setting the status flags in the same manner as the SUB instruction....

February 23, 2020 · 3 min · Denis Nuțiu

Firebase Rest on Raspberry Pi

I’ve tried to use Google’s Firebase with the Firebase Admin SDK in my C# project. The good news is that the Admin SDK is easy to use and all you need to do is call two methods. The authentication part is handled by an environment variable which points to some .json file which you download. The bad news is that the SDK depends on gRPC and the dotnet version of it doesn’t work well on the Raspberry Pi....

February 16, 2020 · 2 min · Denis Nuțiu

picoCTF 2019 Reverse Engineering Vault Doors

I’m always late to the party but here’s my solutions to the PicoCTF2019 Vault Doors challenges from the reverse engineering section. I did it this mainly to improve my skills and hopefully to learn some new things. vault-door-training – Points: 50 Your mission is to enter Dr. Evil’s laboratory and retrieve the blueprints for his Doomsday Project. The laboratory is protected by a series of locked vault doors. Each door is controlled by a computer and requires a password to open....

February 1, 2020 · 4 min · Denis Nuțiu