<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Blog on Cossack Labs</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/</link><description>Recent content in Blog on Cossack Labs</description><language>en-us</language><lastBuildDate>Thu, 01 Jan 2015 00:00:00 +0000</lastBuildDate><atom:link href="/feeds/all.atom.xml" rel="self" type="application/rss+xml"/><item><title>How mobile app analytics library led to the PII exposure</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/how-mobile-app-analytics-library-led-to-the-pii-exposure/</link><pubDate>Fri, 25 Jul 2025 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/how-mobile-app-analytics-library-led-to-the-pii-exposure/</guid><description>A mobile app was leaking personally identifiable information (PII) without anyone knowing. The source? A third-party analytics library. No one on the development team had changed anything. The configuration was untouched. But the library was quietly sending user credentials to its backend dashboard, where they were stored and exposed.
This wasn’t a theoretical risk. It was a real case uncovered by our security engineering team and resolved in close collaboration with the client’s developers.</description></item><item><title>SBOM from the security perspective</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/sbom-from-the-security-perspective/</link><pubDate>Wed, 16 Oct 2024 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/sbom-from-the-security-perspective/</guid><description>Introduction The current situation with SBOMs Types of SBOMs Spotting weak dependencies SBOM and CRA Generating SBOMs: Different tools for different situations Manual SBOM generation GitHub SBOM Generator SBOM for Docker SBOM Benchmarks Inconsistencies in SBOM generation tools SBOMs in security context SBOMs are not accurate SBOMs can include vulnerabilities SBOMs can be signed SBOMs can include hash sums SBOMs’ hindered commercial adoption Data format compatibility issues Privacy concerns General problems of SBOM files Conclusion Introduction # The Software Bill of Materials (SBOM) is a promising approach for keeping an eye on the key elements of a software application, including libraries, dependencies, and frameworks.</description></item><item><title>Protecting ML models running on edge devices and mobile apps</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/machine-learning-security-ml-model-protection-on-mobile-apps-and-edge-devices/</link><pubDate>Fri, 06 Sep 2024 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/machine-learning-security-ml-model-protection-on-mobile-apps-and-edge-devices/</guid><description>Security challenges for Machine Learning models System architecture for delivering and executing ML models on edge device Risks and threats of running ML models in mobile apps Security defences for ML models ML model encryption Cloud and API protection Mobile application anti-tampering controls Proactive anti-fraud security measures Conclusion ML models are unique combinations of data and algorithms that have been trained on massive volumes of data to provide answers, classify incoming data, and transform it.</description></item><item><title>Cossack Labs Mobile Security Score framework for mobile AppSec</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/cossack-labs-mobile-security-score-framework-for-mobile-appsec/</link><pubDate>Fri, 09 Aug 2024 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/cossack-labs-mobile-security-score-framework-for-mobile-appsec/</guid><description>The OWASP Mobile Application Security Verification Standard (MASVS) has been a valuable foundation for our mobile security engineering and assessments. This high-level guideline served us well for a long time, particularly with version 1.5.
However, MASVS v2.0 requires additional tailoring, when it comes to specific risk mitigations our customers are facing, such as specific architecture requirements, cryptography implementations, and a stronger focus on data privacy.
Inspired by MASVS, we developed an improved actionable framework for product security, security assessments, SSDLC, and measuring security posture for mobile applications: Cossack Labs Mobile Security Score (CL MSS).</description></item><item><title>Security autotests for measurable and stable application security processes</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/security-autotests-for-measurable-and-stable-application-security-processes/</link><pubDate>Thu, 02 May 2024 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/security-autotests-for-measurable-and-stable-application-security-processes/</guid><description>Introduction The reason behind security autotests Security Autotests How to create security autotest Writing security autotest for validating response header Customising security autotests Security autotests: Fitting use cases Input validation Security Headers are present Verification session token after logout Ready-to-use templates for security autotests Summary Introduction # Software security development is a repeatable process, and some steps could be automated to free up the valuable time of security and software engineers.</description></item><item><title>Practical OAuth security guide for mobile applications</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/practical-oauth-security-guide-for-mobile-apps/</link><pubDate>Fri, 29 Mar 2024 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/practical-oauth-security-guide-for-mobile-apps/</guid><description>Intro OAuth: The key points Approach: Reviewing security of OAuth implementation in mobile app Understanding app authentication Intricate workflow behind app-based OAuth login Handling redirects back to the mobile app OAuth security improvement with PKCE CSRF attacks mitigation with “state” parameter Automation, automation, more automation Checklist: Security assessment of OAuth implementation Conclusion Intro # Security requires managing risks with smart and controllable solutions. This OAuth security guide provides mobile developers and security engineers practical advice for mastering key security procedures and understanding OAuth mechanisms to protect application and user data.</description></item><item><title>Security tips on using YubiKey and FIDO U2F</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/security-tips-on-using-fido-u2f-and-yubikey/</link><pubDate>Fri, 22 Dec 2023 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/security-tips-on-using-fido-u2f-and-yubikey/</guid><description>Designed for securing online accounts, FIDO U2F as a protocol and YubiKey as a hardware tool are not silver bullets. If not used wisely, this powerful combo becomes an attractive target in the hands of skilful attackers.
In this post, we will explore some of the hidden pitfalls, typical mistakes, and concerns that system architects and software developers should be aware of when building authentication systems using YubiKeys.
Why use YubiKey YubiKeys as MFA: User identification and phishing prevention Yubikey: Architecture and capabilities YubiKey: Supported applets YubiKey: Supported cryptographic operations FIDO family of authentication protocols: FIDO U2F, FIDO2 (passwordless) Fido terms Two-factor authentication in FIDO U2F FIDO U2F security strengths FIDO U2F security weaknesses Using YubiKeys in FIDO U2F YubiKeys in FIDO U2F: Security issues Attacks against FIDO U2F and YubiKey Building secure authentication with FIDO U2F and YubiKey Conclusion Why use YubiKey # YubiKeys are physical security devices that help protect user accounts.</description></item><item><title>Flutter application security considerations</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/flutter-application-security-considerations/</link><pubDate>Fri, 08 Dec 2023 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/flutter-application-security-considerations/</guid><description>Fast and easy cross-platform application frameworks are promising, yet vulnerable to attacks. Is it possible to make the cross-platform mobile application development safe while avoiding security gaps?
In this post we will focus on pros and cons of Flutter, compare it with other approaches to mobile app development, go deep into platform-specific security risks that developers are to be aware of, and finally offer fundamental mobile security recommendations to make your Flutter projects more secure.</description></item><item><title>Digital payment security: Architecture guide</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/digital-wallet-security-architecture-guide/</link><pubDate>Fri, 08 Sep 2023 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/digital-wallet-security-architecture-guide/</guid><description>Building secure digital payment solutions is a challenge when it comes to balancing between convenience and security. How can we build secure digital wallets that meet the needs of fintech users and effectively protect their assets?
Intro Security paradox Balancing convenience and security in digital wallets Perception of security risk Reduce outrage and build a trustworthy digital wallet Digital payment security: Key risks and threats Risk profile and threat model Custodial &amp;amp; non-custodial, hot &amp;amp; cold, multisig wallets: Security benefits vs threats Addressing digital wallet security issues Clearly define your unique risk and threat profile Digital wallets: Addressing security risks Platform security API and backend security Supply chain security Monitoring transactions and addressing security incidents Treating problems systematically: Secure software development lifecycle Targeting specific risks relevant to digital wallets Key leakage and transaction fraud Deanonymisation Know Your Customer Anti Money Laundering Anti Fraud Systems Regulations and compliance Building trustworthy digital payment platforms Security failures in digital wallets Security incidents with custodial and non-custodial wallets Security incidents with banking apps Conclusions and lessons learnt This blogpost is a part of the “Digital wallet security guides”: Read the articles Crypto wallets security as seen by security engineers, Exploring security vulnerabilities in NFC digital wallets, How to prevent digital wallet fraud.</description></item><item><title>How to prevent digital wallet fraud</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/how-to-prevent-digital-wallet-fraud/</link><pubDate>Thu, 13 Jul 2023 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/how-to-prevent-digital-wallet-fraud/</guid><description>Custodial or non-custodial cryptocurrency wallets, money transfer platforms, or banking mobile applications — regardless of their forms, digital wallets are expected to provide secure storage of users’ financial assets. Having gained popularity, digital wallets became a target of malicious actors, bringing financial losses and reputational damage to many companies and their users. Yet the system is as strong as its weakest link — and it’s often human behaviour that becomes the first victim to adversaries.</description></item><item><title>Exploring security vulnerabilities in NFC digital wallets</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/exploring-security-vulnerabilities-in-nfc-digital-wallets/</link><pubDate>Thu, 23 Mar 2023 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/exploring-security-vulnerabilities-in-nfc-digital-wallets/</guid><description>In recent years, we have been reviewing and improving the security of small near-field communication (NFC) devices: smart contactless cards, mobile digital wallets, specialised authentication devices, among others. Some of them are used to sign financial transactions, store secrets, activate other hardware in specialised industrial systems, or verify the user&amp;rsquo;s identity.
This time, we&amp;rsquo;ll explore NFC security issues linked to device storage and communication between mobile / web applications. Such devices are versatile and widely used wherever secrets need to be removed from systems.</description></item><item><title>Smart contract security audit: tips &amp; tricks</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/smart-contract-security-audit-tips-tricks/</link><pubDate>Tue, 13 Dec 2022 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/smart-contract-security-audit-tips-tricks/</guid><description>Smart contracts occupy a separate niche in software development. They are small, immutable, visible to everyone, run on decentralised nodes and, on top of that, transfer user funds.
The smart contracts ecosystem is evolving rapidly, obtaining new development tools, practices, and vulnerabilities. The latter often costs a lot, as security weaknesses in smart contracts result in immediate financial losses. That&amp;rsquo;s why the space of smart contracts security also evolves rapidly.</description></item><item><title>Introduction to automated security testing</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/automated-security-testing/</link><pubDate>Wed, 17 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/automated-security-testing/</guid><description>Dangerous security bugs can sit in a code until someone finds them and turns into vulnerabilities that cost a piece of mind, budget or lives. To avoid a disaster, security engineers and DevSecOps engineers do their best to find and prevent weaknesses in software in the earlier stages of development.
Separate security testing tools and processes ensure that new commits and builds don&amp;rsquo;t introduce new security problems or bring back old ones as security regressions.</description></item><item><title>Cryptographic failures in RF encryption allow stealing robotic devices</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/cryptographic-failures-in-rf-encryption/</link><pubDate>Wed, 29 Jun 2022 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/cryptographic-failures-in-rf-encryption/</guid><description>Cryptographic failures in the wild # Many developers see security people as annoying creatures, always pointing out mistakes and criticizing incorrect decisions. A cryptographer is considered more malignant: they know math and can tell you actual probabilities of some of your failures. They also yell crypto is not a cryptocurrency and don&amp;rsquo;t roll your own crypto often. That would be us.
The precise definition of the second proverbial phrase depends on the context and has changed over the last couple of decades, but most of the time it means Do not design your cryptosystems, especially if you don&amp;rsquo;t know anything about them.</description></item><item><title>Cossack Labs stands on guard for security of Ukrainian companies</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/stand-with-ukraine/</link><pubDate>Mon, 07 Mar 2022 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/stand-with-ukraine/</guid><description>This post has been updated to reflect the current status of our support for Ukraine.&amp;quot;
Keep calm and clean your machine gun.
On the morning of February 24th, the Russian Federation attacked peaceful Ukraine and shifted the narrative for the whole 21st century.
Global wars are not over, their face is changing, while remaining the same underneath: civilian casualties, destroyed cities, propaganda, breaches of the Geneva Conventions and ruined lives.</description></item><item><title>React Native libraries: Security considerations</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/react-native-libraries-security/</link><pubDate>Tue, 15 Feb 2022 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/react-native-libraries-security/</guid><description>React Native is a cross-platform framework that allows developers to write native mobile applications using JavaScript. Supporting multiple platforms means dealing with each platform’s issue (React Native, iOS, Android). Not long ago, we described security challenges in React Native apps from an app architecture perspective.
Unfortunately, React Native ecosystem brings the JavaScript dependency hell into the mobile application world, and we often see issues in third party libraries that drastically affect the security of the main application, and not in a particularly good way.</description></item><item><title>TLS certificate validation in Golang: CRL &amp; OCSP examples</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/tls-validation-implementing-ocsp-and-crl-in-go/</link><pubDate>Tue, 18 Jan 2022 00:00:00 +0200</pubDate><guid>https://www.cossacklabs.com/blog/tls-validation-implementing-ocsp-and-crl-in-go/</guid><description>Most applications use TLS for data-in-transit encryption and every programming language has a TLS support in its ecosystem. TLS was introduced in 1999 based on SSL 3.0. It's quite an old protocol, but, what is more important, it's very complex.
Apart from a simple &amp;ldquo;socket encryption&amp;rdquo; feature, TLS has dozens of various extensions. Dealing with all of them is pretty hard, even though they&amp;rsquo;re there for a reason. That&amp;rsquo;s why many TLS libraries have limited support for many of these extensions.</description></item><item><title>Crypto wallets security as seen by security engineers</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/crypto-wallets-security/</link><pubDate>Tue, 14 Dec 2021 00:00:00 +0200</pubDate><guid>https://www.cossacklabs.com/blog/crypto-wallets-security/</guid><description>What can go wrong when you develop a “secure” crypto wallet? How to eliminate typical security mistakes and build a secure app with multilayered data protection against mnemonic leakage and transaction forgery?
Cossack Labs security engineers were involved in improving the security of several large public blockchain ecosystems and their hot non-custodial crypto wallets.
Here we present some of our observations to help developers build secure crypto wallets and avoid crypto wallet vulnerabilities.</description></item><item><title>Shared responsibility model in cloud security: mind the gap</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/cloud-security-gaps-in-a-shared-responsibility-model/</link><pubDate>Tue, 23 Mar 2021 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/cloud-security-gaps-in-a-shared-responsibility-model/</guid><description>Understanding cloud security # In this article, we observe security responsibility of cloud providers: where it ends, what are the gaps and grey areas, and what risks security teams should take into account when using &amp;ldquo;as a service&amp;rdquo; platforms.
So, you’re planning your new business in an area where security matters, and you start thinking about choosing your cloud provider to build your application on. Typically, you start juggling with a combination of all the nice building blocks you need and financial aspects you’re facing.</description></item><item><title>React Native app security: Things to keep in mind</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/react-native-app-security/</link><pubDate>Thu, 22 Oct 2020 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/react-native-app-security/</guid><description>When developers choose to use React Native as a platform for their mobile apps, they think about the benefits of one codebase for two platforms, increased development speed and advantages of TypeScript.
But what about application security?
Many articles claim that React Native apps are less secure. In this article, we shed light on React Native apps’ security based on our experience and explain some risks and threats developers should address to prevent typical mistakes.</description></item><item><title>Audit logs security: cryptographically signed tamper-proof logs</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/audit-logs-security/</link><pubDate>Mon, 14 Sep 2020 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/audit-logs-security/</guid><description>Logs, audit logs, and security events are must-have components of a secure system, which help to monitor ongoing behaviour and provide forensic evidence in case of an incident. Let’s cut through complexity.
In this article, we cover cryptographically signed audit logging, aka “secure logging”, when logs are generated in a certain way which prevents tampering messages, removing, adding or changing the order of log entries.
We explain why signed logs are essential for security software, how we’ve built-in secure audit logging in Acra, and how to use it together with other defense in-depth layers in your systems.</description></item><item><title>How to build OpenSSL for Carthage iOS</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/how-to-build-openssl-for-carthage-ios/</link><pubDate>Wed, 10 Jun 2020 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/how-to-build-openssl-for-carthage-ios/</guid><description>This story is dedicated to fellow developers struggling with updating Carthage package with the latest OpenSSL for iOS and macOS apps. Here you will find the scripts, error messages, testing matrix, and our working solution for Themis to this no small feat. We believe it could save you time then you meet the same task.
Fire in the hole! 🔥 # Imagine your builds going red because of an outdated OpenSSL that is used by one of your Carthage dependencies.</description></item><item><title>OpenSSL for iOS: tricks of OpenSSL semver</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/openssl-semver-for-ios/</link><pubDate>Wed, 10 Jun 2020 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/openssl-semver-for-ios/</guid><description>OpenSSL complexity starts with its version string. Apple, Carthage, and some dependency analysis tools have different opinions about it. Here is how we dealt with them and submitted iOS app to the App Store.
So, we decided to update OpenSSL in iOS app # Themis provides easy-to-use cryptography for multiple languages and platforms. We implement it on top of existing cryptography engines , such as OpenSSL or BoringSSL, which Themis uses as a source of the cryptographic primitives.</description></item><item><title>PII Encryption Requirements. Cheatsheet</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/pii-encryption-requirements-cheatsheet/</link><pubDate>Thu, 02 Apr 2020 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/pii-encryption-requirements-cheatsheet/</guid><description>This article was initially published on November 2018, then reviewed and updated with the information regarding CCPA on April 2020.
We frequently see how regulatory requirements are mapped onto real-world demands during the integration of our tools and security consulting projects. Producing a coherent vision of which data assets need to be protected is the first step in designing encryption solutions – in the end, encryption comes at a cost and it makes sense to know where this cost is justified.</description></item><item><title>Lift &amp; Shift: cloud security strategy</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/lift-and-shift-cloud/</link><pubDate>Wed, 20 Nov 2019 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/lift-and-shift-cloud/</guid><description>Intro # When companies move their infrastructures into the cloud, provisioning resources and configuring them to emulate their initial infrastructure — a practice called “lift and shift” — or migrate the existing solutions from one platform to another, something inevitably migrates together with all the code and assets: their security assumptions .
The security assumptions affect the major security bottleneck — security team’s time and priorities. And the on-premises threat model and security priorities are very different from cloud-based.</description></item><item><title>How to prepare for data security issues</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/how-to-prepare-for-security-incidents/</link><pubDate>Mon, 28 Oct 2019 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/how-to-prepare-for-security-incidents/</guid><description>Understanding data security issues # The first thing that comes to mind when one thinks about security issues is typically some poorly written code that is prone to RCE, XSS, and similar attacks. But hardly anyone deliberately sets out with “I’m going to write some really bad, vulnerable code today!” intent in mind. Code is always written for a reason, driven by functional demands, culture, and processes.
From a software engineer&amp;rsquo;s point of view, fixing a security issue equals removing an opportunity to exploit something.</description></item><item><title>Implementing End-to-End encryption in Bear App</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/end-to-end-encryption-in-bear-app/</link><pubDate>Thu, 05 Sep 2019 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/end-to-end-encryption-in-bear-app/</guid><description>Bear with us! 🐻 # The latest release of a popular note-taking app Bear contains a new feature — end-to-end encryption of user notes. Cossack Labs team worked closely with the amazing Bear team to help deliver this feature. We are rarely allowed to disclose the details of our custom engineering work, but Bear team was awesome enough to let us highlight some important aspects of work done for them.</description></item><item><title>Secure search over encrypted data</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/secure-search-over-encrypted-data-acra-se/</link><pubDate>Tue, 23 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/secure-search-over-encrypted-data-acra-se/</guid><description>More and more data is outsourced to remote (cloud) storage providers fuelled by “software as a service” trends in enterprise computing. Data owners want to be certain that their data is safe against thefts by outsiders, internal threats, and untrusted service providers alike. To safeguard the data, encryption is used.
Modern encryption is much more than enabling “data at rest encryption” checkbox on AWS S3 or using TLS connection between database and backend.</description></item><item><title>Install Acra 1-Click App through DigitalOcean Marketplace</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/install-acra-digitalocean-marketplace-tutorial/</link><pubDate>Tue, 07 May 2019 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/install-acra-digitalocean-marketplace-tutorial/</guid><description>Cossack Labs has recently joined the DigitalOcean Marketplace family following our mission to make high-end security tools available to the general developer audience in a convenient fashion. Acra encryption suite is one of the first data security and encryption tools on DigitalOcean Marketplace and it is now available as 1-Click App running in DigitalOcean Droplet .
Acra provides selective encryption, multi-layered access control, SQL firewall (SQL injection prevention), database leakage prevention, and intrusion detection capabilities as server deployed in your infrastructure (on prem or in cloud).</description></item><item><title>Acra on DigitalOcean Marketplace</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/acra-digitalocean-marketplace/</link><pubDate>Tue, 16 Apr 2019 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/acra-digitalocean-marketplace/</guid><description>We always strive to make high-end security tools available to general developer audience in a convenient fashion. Only by making data security accessible, we can ensure real security of sensitive data everywhere.
As another step towards our mission, we are proud to announce that Acra encryption suite is now available as 1-Click App running in a Droplet on DigitalOcean Marketplace .
DigitalOcean is known for its caring attitude towards development teams of any size.</description></item><item><title>Defense in depth security strategy based on data encryption</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/defense-in-depth-security-strategy/</link><pubDate>Thu, 04 Apr 2019 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/defense-in-depth-security-strategy/</guid><description>Intro # Any set of security controls deployed in your infrastructure may fail. Given enough pressure, some controls will certainly fail. No surprises here, but the question is – how to build our systems to make security incidents less damaging in case of a failure of some components? How to prevent data leaks even in case of a successful data breach?
Building security tools , we strive towards defense in depth approach.</description></item><item><title>How to build an SQL Firewall</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/how-to-build-sql-firewall-acracensor/</link><pubDate>Tue, 05 Mar 2019 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/how-to-build-sql-firewall-acracensor/</guid><description>Building AcraCensor transparent SQL firewall There are two main ways to mitigate SQL injections: inside the app (using prepared statements, stored procedures, escaping) and outside the app (using Web Application Firewalls or SQL firewalls). WAFs analyse web and HTML traffic using rule sets based on regexs and are good for covering the known vulnerabilities. SQL firewalls sit closer to the database, analyse SQL statements for potentially malicious content, which makes them more flexible in SQL injections prevention.</description></item><item><title>How to prevent SQL injections when WAF’s not enough</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/how-to-prevent-sql-injections/</link><pubDate>Wed, 13 Feb 2019 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/how-to-prevent-sql-injections/</guid><description>Can WAF prevent SQL injection? What is the biggest threat to a tool that prevents unauthorised database access? Requests from the application side that trigger data leakage. Namely, SQL injections and other application attacks that allow attackers to craft custom SQL queries. How can we prevent that?
The standard industry response is obvious — input sanitization, web application firewalls (WAFs), and prepared statements are typically used for addressing these concerns.</description></item><item><title>Blockchain &amp; GDPR: dos and don’ts while achieving compliance</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/blockchain-and-gdpr/</link><pubDate>Tue, 22 Jan 2019 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/blockchain-and-gdpr/</guid><description>On blockchain and GDPR As cryptographers who develop data security tools that heavily involve cryptography (surprise surprise), we get asked a lot of questions about “crypto”. Unfortunately, not “cryptozoology”* crypto, but neither it is cryptography. Very often it is about blockchain.
More and more tools claim to have “unprecedented levels of security” or “GDPR compliance &amp; security by design” when using security designs based on blockchain and distributed consensus systems.</description></item><item><title>Thank You for Contributing and Using Themis in 2018</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/themis-contributors-and-projects-2018/</link><pubDate>Thu, 20 Dec 2018 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/themis-contributors-and-projects-2018/</guid><description>We believe that everyone should be able to create secure applications and protect users’ privacy. That’s why our main cryptographic components are open source and developer-friendly. But open-source would be nothing without external contributions and feedback from users. We would like to publicly celebrate our open-source contributors and users who challenged us to make our open-source offerings more robust by asking hard questions, pointing out usability problems and potential usage patterns we were not aware of before.</description></item><item><title>Hiring External Security Team: What You Need to Know</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/hiring-external-security-team/</link><pubDate>Tue, 27 Nov 2018 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/hiring-external-security-team/</guid><description>In our company, we’ve succeeded in clearly articulating the deliverables of our products and consulting projects. Building a network of great partners and delegating the work out of range of our primary competencies to them helps both parties concentrate on what’s we’re best at. However, there are a lot of challenges in building distributing the work between different types of security specialists.
Larger part of the market is still struggling to show a viable differentiation for the customer looking to mitigate various infosec-related risks.</description></item><item><title>How to Implement Tracing in a Modern Distributed Application</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/how-to-implement-distributed-tracing/</link><pubDate>Thu, 22 Nov 2018 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/how-to-implement-distributed-tracing/</guid><description>Distributed tracing is incredibly helpful during the integration and optimisation of microservice-rich software. Before implementing tracing as a publicly available feature in the latest version of Acra, we did a small research to catch up with current industry standards in tracing protocols and tools. In this article, we’ve decided to explain, why tracing is a very useful thing and how you can benefit from using it in your projects.</description></item><item><title>GDPR for software developers: implementing rights and security demands</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/gdpr-for-software-developers/</link><pubDate>Thu, 20 Sep 2018 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/gdpr-for-software-developers/</guid><description>A methodical software developer’s perspective on mapping privacy regulations to changes in the database structure, updates in DevOps practices, backups, and restricted processing.
GDPR and software development After 2 years of fearful anticipation, GDPR is finally here, in full effect starting with May 25, 2018. A considerable number of clients who've entrusted their data to our solutions keep asking a lot of questions in one or another way related to GDPR.</description></item><item><title>Poison Records in Acra – Database Honeypots for Intrusion Detection</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/acra-poison-records/</link><pubDate>Thu, 16 Aug 2018 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/acra-poison-records/</guid><description>Poison Records in Acra Intro When naming our special type of data containers created for raising an alarm within Acra-powered infrastructures, we were sure we’ve seen the term “poison records” used elsewhere in the same context. This particular technique in out of the box solution was first offered by us (if it wasn’t, let us know! We'd like to know more about their backstory :)).
In a way, poison records are very much like passive honeypots, but their mechanics of work is completely different.</description></item><item><title>Social Events of Spring-Summer 2018 for Cossack Labs</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/social-events-summer-2018/</link><pubDate>Fri, 13 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/social-events-summer-2018/</guid><description>Late April throughout late June of 2018 was quite a hot time for the Cossack Labs team as we were actively developing our products, releasing feature after feature for Acra and Themis and also participated, spoken at, and hosted a number of conferences, meetups, and workshops. Want to see what it takes for an R&amp;amp;D team to actively participate in a conference circuit? Read on. 21/04 BSides Kyiv, Ukraine The BSides Kyiv security conference kicked off the series of social events for Cossack Labs in this quarter.</description></item><item><title>How to reduce Docker image size (Example)</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/how-to-reduce-docker-image-size/</link><pubDate>Tue, 29 May 2018 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/how-to-reduce-docker-image-size/</guid><description>Need for Docker image reducing To provide convenient delivery and faster deployment of our tools, just like everybody else − we use Docker. This article describes our experience of using containers for distribution of our product Acra (database encryption suite) and focuses on the method we used to reduce the size of Docker images approximately by 62-64 times.
It’s not like we’ve made a revolutionary discovery, but as developers, we found it interesting to trace the steps from the moment of packaging a product into a container to trimming it down to a small Docker image.</description></item><item><title>Moving to OpenSSL 1.1.0 — How We Did It</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/moving-to-openssl-110/</link><pubDate>Mon, 09 Apr 2018 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/moving-to-openssl-110/</guid><description>This article was published in 2018 about R&amp;D work, which resulted in stable production release of Themis that now uses OpenSSL 1.1.1g
If you’re a developer and you’re dealing with cryptography for your app, consider using high-level cryptographic libraries like Themis instead of OpenSSL. No need to struggle with OpenSSL if your goal is to protect users’ data.
Moving to OpenSSL 1.1.0 Besides introducing breaking changes through abandoning backward compatibility on x64 systems, the recent version of Themis (Themis 0.</description></item><item><title>2017 at Cossack Labs</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/2017-at-cossack-labs/</link><pubDate>Fri, 29 Dec 2017 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/2017-at-cossack-labs/</guid><description>Stats This was an eventful year for Cossack Labs! According to our GitHub stats, in 2017 we:
made 1200 commits into master branches;
merged 260 PRs;
accumulated 444 new stars.
Products and releases We picked a weird, but hopefully auspicious habit of releasing stuff on holidays or 13th days of the month (preferably Fridays :) or Mercury retrograde periods:
Acra Acra’s public release took place on the 8th of March.</description></item><item><title>Happy Holidays from Cossack Labs!</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/happy-holidays-2018/</link><pubDate>Mon, 25 Dec 2017 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/happy-holidays-2018/</guid><description>Season&amp;rsquo;s greetings and all kinds of good things in the New Year!
– With 🔒 from Cossack Labs!</description></item><item><title>Auditable Macros in C Code</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/macros-in-crypto-c-code/</link><pubDate>Thu, 23 Nov 2017 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/macros-in-crypto-c-code/</guid><description>Intro Like death and taxes, one thing that you can be sure of is that using C macros in a modern software project will cause a debate. While for some macros remain a convenient and efficient way of achieving particular programming goals, for others they are opaque, introduce the unnecessary risk of coding errors, and reduce readability. The criticism of macros is particularly acute in the wider security community. Among Cossack Labs’ engineers and the core Themis crypto library contributors there are people who previously worked on auditing cryptographic implementations of critical code.</description></item><item><title>Replacing OpenSSL with Libsodium</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/replacing-openssl-with-libsodium/</link><pubDate>Thu, 21 Sep 2017 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/replacing-openssl-with-libsodium/</guid><description>This article was published in 2017 about R&amp;D work, which resulted in stable production release of Themis.
Intro In our ongoing effort to make Themis work with different cryptographic backends, we've decided to try something more challenging than just displacing similar primitives. This time we decided to make Themis work on Daniel J. Bernstein’s cryptography, as it is introduced in NaCl.
What if one day it turns out that Daniel Bernstein’s assumptions about the rest of the world are correct, and everybody else is a lunatic?</description></item><item><title>Replacing OpenSSL with BoringSSL in a Complex Multi-Platform Layout</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/replacing-openssl-with-boringssl/</link><pubDate>Tue, 11 Jul 2017 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/replacing-openssl-with-boringssl/</guid><description>This article was published in 2017 about R&amp;D work, which resulted in stable production release of Themis that uses BoringSSL as one of crypto-engines.
If you’re a developer and you’re dealing with cryptography for your app, consider using high-level cryptographic libraries like Themis instead of BoringSSL. No need to struggle with BoringSSL if your goal is to protect users’ data.
Intro In Themis, we use industry-recognized implementations of cryptographic algorithms that come from OpenSSL/LibreSSL packages.</description></item><item><title>Importing with ctypes in Python: fighting overflows</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/fighting-ctypes-overflows/</link><pubDate>Mon, 06 Mar 2017 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/fighting-ctypes-overflows/</guid><description>Introduction On some cold winter night, we&amp;#39;ve decided to refactor a few examples and tests for Python&amp;nbsp;wrapper in Themis, because things have to be not only efficient and useful, but elegant as well. One thing after another, and we ended up revamping Themis error codes a bit.
Internal error and status flags sometimes get less attention than crypto-related code: they are internals for internal use. Problem is, when they fail, they might break something more crucial in a completely invisible way.</description></item><item><title>Plugging leaks in Go memory management</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/investigating-go-memory-leaks/</link><pubDate>Tue, 28 Feb 2017 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/investigating-go-memory-leaks/</guid><description>Intro As many of you know, Go is an amazing modern programming language with automated memory management. We love Go: we&amp;#39;ve used it to build Acra, our database encryption suite, we further use it to build other products. Not being extremely fancy, Go is practical and efficient and is a way to get things done in a reasonable timeframe.
Sometimes, even in the age of modern, garbage-collected languages, with their own great profiling tools and well-thought memory management style, you&amp;#39;ll still have to dust off old good valgrind to understand what&amp;#39;s going on.</description></item><item><title>2016 at Cossack Labs</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/this-year-at-cossack-labs/</link><pubDate>Fri, 30 Dec 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/this-year-at-cossack-labs/</guid><description>Bright and full of new 2016 year insensibly came to an end. Writing good software is hard: absorbed in developing our main products, closed a testing round of Acra (all hail the braves who dedicated an immense amount of time giving us feedback), we&amp;rsquo;ve spent most of the year undercover. Now that we&amp;rsquo;ve shown first cues to the open public, revelatory moments are closer than ever.
This year we&amp;rsquo;ve put a lot of effort into helping Themis users understand how to better use Themis and how to build stronger apps:</description></item><item><title>13 tips to enhance database and infrastructure security</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/backend-data-security-modern-ideas/</link><pubDate>Tue, 13 Dec 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/backend-data-security-modern-ideas/</guid><description>Article updated in 2019.
Previously in the series... Previously, we&amp;rsquo;ve talked about design patterns best practices in backend security, then about&amp;nbsp;key management goals and techniques.
It is important to understand that database security evolved with system administration techniques and programming demands, with cryptography and access controls being complementary features, rather than cornerstones.
In classic designs, there are two important drawbacks:
Trust tokens:
they rely on storing trust tokens somewhere inside the infrastructure;</description></item><item><title>Why making Internet safe is everyone’s responsibility</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/we-are-responsible-for-safe-internet/</link><pubDate>Wed, 26 Oct 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/we-are-responsible-for-safe-internet/</guid><description>Responsibility is yours, mine, and that developer&amp;#39;s in the office nearby. Open any tech news aggregator and chances are, one-third of all news will be security-related. What we are seeing right now is insane raise of awareness to cyber security, dictated by security threats suddenly turning looming on the horizon to dangerously close to anybody on the Internet.
It is not your typical buzzword market fad, where everyone suddenly gets interested in next exciting topic in the development of modern tech, looking for &amp;lsquo;wild opportunities&amp;rsquo;.</description></item><item><title>Key management in data security: fundamentals</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/key-management-101/</link><pubDate>Wed, 21 Sep 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/key-management-101/</guid><description>Key management in security system Frequently overlooked, much less hyped than quantum computers breaking trapdoor functions, managing keys is actually the most important part of building a security system. Secret keys, public-private key pairs, passwords and other factors of authentication are the control vessels within security system.
In this article, we will go through basic key management concepts, explain some important ideas for next articles and provide some practical advice you can start implementing within your application tomorrow.</description></item><item><title>Backend security: design patterns best practices</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/classic-backend-security-designs/</link><pubDate>Mon, 15 Aug 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/classic-backend-security-designs/</guid><description>This article was revisited and updated in August 2018.
In modern client-server applications, most of the sensitive data is stored (and consequently leaked) on the backend. At Cossack Labs, we&amp;rsquo;re working on novel techniques to protect the data within modern infrastructures. We talk to engineers across industries about these techniques quite a lot too. However, it is still not uncommon to see infrastructures without even the basic classic database defence patterns.</description></item><item><title>Zero Knowledge Protocols without magic</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/zero-knowledge-protocols-without-magic/</link><pubDate>Wed, 27 Jul 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/zero-knowledge-protocols-without-magic/</guid><description>When we&amp;rsquo;ve first released Secure Comparator to use in our Themis crypto library and started talking about novel authentication concepts, we&amp;rsquo;ve encountered a few common misconceptions and plenty of magical thinking about Zero-Knowledge Proofs as a phenomenon. In this post, we&amp;rsquo;ll talk about some of them, tie ZKP authentication to traditional security models, and help you gain a better understanding of how authentication, in general, should work.
Understanding authentication and Zero-Knowledge Proof Protocols What is authentication, anyway?</description></item><item><title>Perimeter security: avoiding disappointment, shame and despair</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/perimeter-security-avoiding-disappointment-shame-and-despair/</link><pubDate>Wed, 20 Jul 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/perimeter-security-avoiding-disappointment-shame-and-despair/</guid><description>Perimeter security: looking back Over the years, the Internet has evolved, and complex systems facing the Internet have evolved too.&amp;nbsp;
Traditional security methodology to defend these systems was to build strong walls around your most valuable assets: build a castle and hope it stands against the external adversary. We&amp;rsquo;ve invested into firewalls, data leakage prevention systems, intrusion detection of all sorts.
And what&amp;rsquo;s behind these walls? Whatever it is, it&amp;rsquo;s protected, we&amp;rsquo;ve thought for a long time.</description></item><item><title>Choose your Android crypto (Infographic)</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/choose-android-crypto/</link><pubDate>Mon, 23 May 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/choose-android-crypto/</guid><description>Why do I even need to choose? Warning: This article borrows a lot from our original Choose your iOS Crypto publication, so if you&amp;#39;ve read that one, feel free to skip ahead to the libraries and ending notes about the actual Android specificities.
When building your next app, you might realise that you need to encrypt the data. There are two main reasons for that:
transmitting sensitive data to the server and back</description></item><item><title>Building Sesto, in-browser password manager</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/presenting-sesto/</link><pubDate>Thu, 21 Apr 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/presenting-sesto/</guid><description>Intro: what is Sesto Sesto (abbreviation for Secret Store) is open source passwords (and general secrets) manager for web.
What sets Sesto apart from many other password managers is:
it&amp;#39;s web password manager, e.g. you don&amp;#39;t need local client to run it, only have compatible browser (Google Chrome with PNaCl modules enabled), the application is downloaded from Sesto server.
for a clientless web password manager, it&amp;#39;s strong security model: most web password managers are built either on JS crypto (which is bad), or rely on simply protecting your data via SSL and with some arbitrary keys on server side.</description></item><item><title>Benchmarking Secure Comparator</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/benchmarking-secure-comparator/</link><pubDate>Thu, 07 Apr 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/benchmarking-secure-comparator/</guid><description>When we conceived Secure Comparator, we saw that it is going to be slightly slower than existing authentication methods, because:
SMP requires much more rounds of data exchange
each round involves expensive calculations
our modification of ed25519 implementation involves blinding to avoid timing attacks, which makes overall performance even slower
This is a consequence of different demands and different security guarantees Secure Comparator gives: let systems with zero shared information exchange requests to data, where request data itself is a leakage.</description></item><item><title>Crypto in iOS: Choose your destiny (Infographic)</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/choose-your-ios-crypto/</link><pubDate>Wed, 30 Mar 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/choose-your-ios-crypto/</guid><description>Why do I even need to choose? When building your next app, you might realize that you need to encrypt the data. There are two main reasons for that:
The need to transmit sensitive data to server and back;
The need to store sensitive data.
Even though there are multiple tools for doing just that, not all of those tools are equal. By just taking some random algorithm from CommonCrypto and using StackOverflow example to implement it, you&amp;#39;ll fail.</description></item><item><title>Building secure end-to-end webchat with Themis</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/building-endtoend-webchat/</link><pubDate>Thu, 17 Mar 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/building-endtoend-webchat/</guid><description>Intro While developing components of our products, we love to explore use cases and usability through creating real-world test stands.&amp;nbsp;
0fc is a side-product of WebThemis research: while doing some protocol design for front-end clients with WebThemis services, we wanted to try it in a real-world situation. We&amp;#39;ve set ourselves a novel idea: end-to-end encrypted webchat, inclined towards client anonymity, giving zero trust to the server, built only with typical Themis primitives.</description></item><item><title>Building LibreSSL for PNaCl</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/building-libressl-for-pnacl/</link><pubDate>Mon, 14 Mar 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/building-libressl-for-pnacl/</guid><description>Intro While building WebThemis, we&amp;#39;ve encountered the need to build LibreSSL for PNaCl as a source of cryptographic primitives.
The problem? LibreSSL has huge codebase with a lot of complicated code, that won&amp;#39;t build on new platform out of the box. Solution? Strip all we can and make the rest work.
Having gone &amp;ldquo;let&amp;rsquo;s do a quick hack to build Libre&amp;rdquo; barbaric way for PoC version of WebThemis, we would like to share our experience for the aspiring PNaCl developers to benefit.</description></item><item><title>Building and Using Themis in PNaCl</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/building-themis-in-pnacl/</link><pubDate>Tue, 08 Mar 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/building-themis-in-pnacl/</guid><description>Intro Native Client (NaCl) allows browser applications to launch a native low-level code in an isolated environment. Thanks to this, some code, performance code parts can be rewritten in C or C++ easily. Until recent time, NaCl could work on x86-compatible systems only, yet supporting ARM platform becomes very important, because a huge variety of devices (especially the newest Chrome OS laptops), are built on ARM architecture.
All you need to compile the code for ARM is located in the latest Native Client SDK.</description></item><item><title>What's wrong with Web Cryptography</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/whats-wrong-with-web-crypto/</link><pubDate>Thu, 03 Mar 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/whats-wrong-with-web-crypto/</guid><description>Introduction Building full stack of cryptographic protection for modern applications includes working with the modern web browser, of course.
However, through 20+ years of history of web browsers, we&amp;#39;re at the stage where in-browser cryptography is still problematic, and best you can rely on is SSL. Which only protects data transport between you and server, leaving you hoping that you&amp;#39;re good enough to go. Which is not always the case.</description></item><item><title>Fixing Secure Comparator</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/fixing-secure-comparator/</link><pubDate>Thu, 11 Feb 2016 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/fixing-secure-comparator/</guid><description>Introduction The idea behind Socialist Millionaire Protocol is to provide definite answer to the question whether two communicating parties possess the same secret or not in a secure (zero-knowledge) manner. However, given a problem like this, one still has to take care of many implementation details which contribute to the protocol&amp;#39;s security properties.
After releasing Secure Comparator paper / PoC code, we&amp;#39;ve received significant amount of critical feedback: in our github issues #85 and #83 and a number of reddit posts.</description></item><item><title>Introducing Secure Comparator</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/introducing_secure_comparator/</link><pubDate>Wed, 09 Dec 2015 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/introducing_secure_comparator/</guid><description>A word to pass Passwords are the ultimate keepers of security, extensively used in the 21st century&amp;#39;s Internet. As more and more aspects of our lives become accessible online, the importance of keeping your passwords secure becomes crucial, because anybody knowing the password may access your accounts. However, when you input password to access your account, it uses thousands of intermediate links to deliver the data, meaning that your secret password can be compromised at any moment.</description></item><item><title>Why we need novel authentication schemes?</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/why-we-need-novel-authentication-methods/</link><pubDate>Thu, 26 Nov 2015 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/why-we-need-novel-authentication-methods/</guid><description>Introduction: A Word To Pass Before introducing our novel request authentication scheme in Themis, we’ve decided to create an overview of the existing methods of authentication and try to look into what the future might bring us.
Passwords are ultimate keepers of diversity and security. Since Ancient Roman times until now, they are used for one to prove being worthy to get some privilege others do not possess, however strongly desire to obtain.</description></item><item><title>WeakDH/LogJam vs Secure Session</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/weakdh_vs_securesession/</link><pubDate>Fri, 20 Nov 2015 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/weakdh_vs_securesession/</guid><description>Intro After LogJam vulnerability was published, and then the WeakDH paper (Imperfect Forward Secrecy: How Diffie-Hellman Fails in Practice) was published, we were asked a few times: since Secure Session uses Diffie-Hellman key negotiation, is prone to the same attacks?
We wrote this small note to explain why we are safe from such attacks, and how generally decisions about such important security features are being done for the open source Themis crypto library.</description></item><item><title>Armoring ed25519 to meet extended security challenges</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/armoring-ed25519/</link><pubDate>Wed, 18 Nov 2015 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/armoring-ed25519/</guid><description>This article was revisited and updated in October 2018.
Introduction We strive to use the best state-of-the-art cryptography for our library Themis. So when we wanted to implement an important novel feature Secure Comparator (that includes the so-called "Socialist Millionaire Protocol"), we needed to replace the prime-field modular arithmetic with something stronger.
The obvious choice for such replacement was the ed25519 signature system:
it provides even more protection from side-channel analysis than conventional (NIST-driven) ECC,</description></item><item><title>Why you should avoid SSL for your next application</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/avoid-ssl-for-your-next-app/</link><pubDate>Wed, 28 Oct 2015 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/avoid-ssl-for-your-next-app/</guid><description>Introduction 2018 update: This article was 4 years old, and even then presented disputable opinion. Many things have changed since then, we're having TLS 1.3, which eliminates a number of cryptographic concerns and enforces correct uses. Still, many challenges stand unaddressed. We've remixed the article to keep relevant problems, and outline solutions to those solved, along with a few thoughts on what and when you can use instead. Everyday software developers trust SSL / TLS encryption to protect their communications without considering whether or not this is the right thing to do.</description></item><item><title>Building encrypted chat service with Themis and mobile websocket example</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/building-secure-chat/</link><pubDate>Thu, 01 Oct 2015 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/building-secure-chat/</guid><description>Introduction Imagine you&amp;#39;d like to build your own chat server, which allows clients to exchange messages safely. You have a simple infrastructure consisting of a server written in Ruby and clients for iOS and Android. This is exactly what the famous Mobile websocket example provides. We have modified it to illustrate how simple it is to add security features using Themis.
In this tutorial, we&amp;#39;ll try to preserve as much of it&amp;#39;s simplicity and architecture as possible, but add cryptographic protection.</description></item><item><title>Notes on adding cutting edge features</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/notes-on-cutting-edge-features/</link><pubDate>Tue, 22 Sep 2015 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/notes-on-cutting-edge-features/</guid><description>As we&amp;#39;ve stated in the past, the Themis library grew out of our own needs for a secure, efficient and convenient cryptographic library. While providing abstracted high-level services, Themis uses trusted, well established implementations of cryptographic primitives such as those provided by LibreSSL/OpenSSL or platform native cryptography providers.
With the upcoming v0.9.2 release of the Themis library, we will be announcing a new set of features called &amp;quot;Secure Comparator&amp;quot;. As distinct from the current set of Themis functions, Secure Comparator not only uses existing implementations of cryptographic math but also our own in house developments - as we could find no suitable public implementations for some of operations with ECC curve ed25519.</description></item><item><title>Releasing Themis into public: usability testing</title><link nonce="=====NONCE=====">https://www.cossacklabs.com/blog/02-usability-testing/</link><pubDate>Wed, 03 Jun 2015 00:00:00 +0000</pubDate><guid>https://www.cossacklabs.com/blog/02-usability-testing/</guid><description>How we did usability testing for Themis when releasing the open source library into public.
When we were ready to release Themis, we&amp;#39;ve gathered a few colleagues and decided to make a test run on unsuspecting developers - how would the library blend into their workflows?
1. Introduction While usability testing for user-centric applications has it&amp;#39;s own distinct techniques, standards and frameworks, this is not so typical for a relatively complex and technical library aimed at developers and spanning multiple languages and platforms.</description></item></channel></rss>