A Practical Implementation of the Switching Generator Using Verilog HDL
Abstract
Linear feedback shift registers are an excellent tool for implementing a pseudo random bit generator in hardware; they inhibit a simple and efficient electronic structure. Further, they are capable of producing output sequences with large periods and good statistical properties. However, standard LFSRs are not cryptographically secure, since the output sequence can be uniquely predicted given a small number of key stream bits using Berlekamp-Massey algorithm. Several methods have been proposed to destroy the linearity inherent in LFSR design. These methods include nonlinear combination generators, nonlinear filter generators, and clock controlled generators. Nevertheless, they remain vulnerable to many attacks such as side channel attacks and algebraic attacks. In 2015, a new clocked controlled generator, called the switching generator, was proposed. This new generator has been proven to be resistant to algebraic attacks and side channel attacks, while preserving efficiency and security requirements. In this project, we present a design of the switching generator using Verilog HDL.
The Future of PostgreSQL: How a 64-bit Transaction Counter Solves Scaling Issues

For many years, the PostgreSQL community was skeptical about using this database management system (DBMS) for high-transaction environments. While PostgreSQL worked well for lab tests, mid-tier web applications, and smaller backend systems, it was believed that for heavy transactional loads, you’d need an expensive DBMS designed specifically for such purposes. As a result, PostgreSQL wasn’t particularly developed in that direction, leaving a range of issues unanswered.
However, the reality has turned out differently. More and more of our clients are encountering problems that stem from this mindset. For example, in the global PostgreSQL community, it’s considered that 64 cores is the maximum size of a server where PostgreSQL can run effectively. But we’re now seeing that this is becoming a minimum typical configuration. One particular bottleneck that has emerged is the transaction counter, and this is a far more interesting issue. So, let’s dive into what the problem is, how we solved it, and what the international community thinks about it.
«Where, where have you gone», or searching for missing stations on public transport routes in OpenStreetMap

OpenStreetMap (OSM) is a global project formed around a geographic information database which is being filled by all comers — both enthusiasts and interested companies. Anybody can contribute, but the openness has its downside: incorrect edits often get into the database. Hence plenty of validators of OSM data have been written which allow to maintain the data quality at an acceptable level.
Since 2016 there exists an open source subway preprocessor that validates (generates error reports) rapid transit routes in OSM for completeness and logical/topological errors, and converts them into formats that are suitable for routing and rendering, e.g. GTFS. Besides OSM data it takes a list of public transport (PT) networks which contains the checking information about the number of lines, stations etc. per a PT network. The preprocessor has successfully proven itself in the preparation of PT data for applications such as Maps.me and Organic Maps.
In this article, I would like to share an approach to detecting one of the types of errors that occur quite often in OSM data and automatic detection of which is somewhat challenging. It's an accidental loss of a station from a route. The source code of the validator and the described algorithm are open source. But first, let's define the concepts used to represent PT data in OpenStreetMap.
XML parsing into plain Map in Golang

While in 2024 using XML looks a bit outdated, it still happens. And sometimes it happens we are to deal with XML having "free-structure", i.e. it couldn't be parsed into tree of user-defined structs. For JSON there still is a way to parse it with a single call into map[string]any
and work with it using careful type assertions. Regretfully, there is no similar feature for XML (in Golang). Here I'll draft suitable function and demonstrate it - both for others and for myself if I ever need this again (recreating it from scratch may be somewhat painful).
Character Creation Assistance, a hobby ML project

For one of my projects I was exploring Reddit to understand how players create characters in video games, what is important to them in this process, and what their preferences are. It turns out that communities sharing their creations or seeking help with specific character designs remain active even for games released years ago. This realization sparked the idea for a hobby project that could assist these players in creating the characters they envision.
Migrating from freezed.dart… or not?

I recently stumbled upon a package called dart_mappable
, and I feel compelled to share what I liked about it. If you're involved in Dart or Flutter development, this might be of particular interest to you.
These Tools helped me become x10 faster Web Developer

In this article, I'd like to share my top 5 tools that have helped me become more efficient and faster as a web developer. You may already use some of these tools, but others could be new. Read the article to the end to make sure you don't miss the most essential tool :).
The Role of Radar Technology in Weather Forecasting

Radar technology is crucial to modern weather forecasting, providing real-time data on precipitation, storm intensity, and atmospheric patterns. This article explores how radar works, its applications in meteorology, and its impact on improving weather predictions.
From Junior QA to Product Owner: My Growth Story at EXANTE

Hi, I’m Nastya, the Product Owner of EXANTE’s desktop and web trading terminals. I began working at the company nearly five years ago as a Junior QA Engineer. Since then, I’ve advanced to QA Lead and ultimately to Product Owner. In this article, I’d like to share my growth journey within the company and the steps that helped me progress. I hope that my story will be helpful to those seeking to advance their careers but are unsure where to start.
A new platform for FPGA seminars based on Gowin Tang Nano 9K: adding sound, graphics and microarchitecture labs

Gowin has clear advantages over Xilinx in the educational FPGA board market: Gowin boards are several times less expensive, the synthesis speed is several times faster, and the EDA package is two orders of magnitude smaller: we are talking about 1G versus 100G disk space. Of course, Xilinx is still the king of high-end prototyping boards that cost $10K-100K, but for the students such boards are irrelevant; such boards are for ASIC design companies. A beginning EE student needs a board for less than $100, and Gowin not only fits the bill but also covers all the needs, specifically:
How to build and run calculator from Windows XP using GCC x64?

Hi Everyone!
In this article we a little bit will analyze of code of Windows XP and will compile the calculator application using GCC x64 in Windows 10 environment. We will look what kind of errors I faced during the build and the methods how to solve them. At the end we will launch the build of the calc.exe application.
Have a nice reading!
What is to see under the Black Sun of Giedi Prime?

The director Denis Villeneuve and cinematographer Greig Fraser in their Dune: Part Two movie made a curious decision to film the scenes on the surface of the Giedi Prime planet in the infrared spectrum. It turned out to have interesting aesthetics and there are some interesting related physics to discuss and speculate about how realistic the look of it is.
互联网屏蔽是如何工作的:使用实例概述现代方法

一组印度科学家发表了以其本国为例政府机构采用的现代互联网屏蔽方法概述。他们研究了互联网服务提供商限制访问被禁信息的机制,评估了这些机制的准确性以及绕过这些屏蔽的能力。2captcha常驻代理团队整理了这项研究,并提请大家关注这项工作成果的主要论点。
How to understand when proxies are lying

How to understand when proxies are lying: verification of physical locations of network proxies using an active geolocation algorithm
People all over the world use commercial proxies to hide their true location or identity. This can be done to solve various tasks, including accessing blocked information or ensuring privacy.
Сервис опросов

Опросы – это не просто инструмент сбора мнений; они являются мостом между компаниями и их аудиторией, позволяя не только узнать мнение клиентов, но и вовлечь их в процесс создания и улучшения продуктов и услуг.
Сервис опросов Тестограф предоставляет широкие возможности для создания опросов, тестов и голосований, обладая функционалом, который позволяет не только собирать данные, но и анализировать их, делая выводы и принимая обоснованные решения на их основе.
Эта статья будет интересна широкому кругу читателей: от HR-менеджеров, стремящихся оптимизировать процесс подбора и оценки персонала, до маркетологов, ищущих пути повышения эффективности своих кампаний через глубокое понимание целевой аудитории. Она также окажется полезной для специалистов по UX/UI, стремящихся улучшить пользовательский опыт на основе реальных отзывов, и для организаторов голосований, желающих обеспечить прозрачность и достоверность результатов.
lsFusion: Open-Source Rapid Application Development Platform
lsFusion platform is designed for rapid development of business applications. It is distributed under the terms of a Lesser General Public License (LGPLv3). The source code of the platform is available on Github.
lsFusion is best suited for creating complex systems with large numbers of entities and forms, where users need to input and process large amounts of data. However, the platform can also be used to quickly create simple applications instead of spreadsheets when Excel’s functionality is not enough.
At the same time the use of the platform will not give a great advantage when developing applications aimed at interaction with a large number of “external” users or without the need for any complex calculations. You should also take into account that the web interface is a single page application using JavaScript. Therefore, the lsFusion platform is not well-suited for creating websites, for example.
Q1 2023 DDoS Attacks and BGP Incidents

Let's take a deeper look at the Q1 2023 DDoS attacks mitigation statistics and observations from Qrator Labs' perspective.
The Collatz conjecture is the greatest math trick of all time

On the Internet and in non-fiction literature you can often find various mathematical tricks. The Collatz conjecture leaves all such tricks behind. At first glance, it may seem like some kind of a trick with a catch. However, there is no catch. You think of a number and repeat one of two arithmetic operations for it several times. Surprisingly, the result of these actions will always be the same. Or, may be not always?