background preloader

Security and authentication

Facebook Twitter

Apache - Generating CSR for multi-domain. SSL Certificates Explained. Techblog - From 0 to cryptography. Published on September 18, 2012 by Tiberiu Barbu This guide is designed to explain why you need to hide information and how can you do this when you do not trust the channel through which messages are conveyed.

Techblog - From 0 to cryptography

We will discuss about cryptographic system, encryption, decryption, one-way function, asymmetric keys and more. You may think of cryptography as the thing that keeps you untouchable inside of a soap bubble travelling by air around the world. 1dent1ty cHa0s: Issues when binding to AD LDS (ADAM) userProxy. Aka "Configuring SSL for AD LDS on Windows Server 2008 Server Core" You may have found your way here because: you are having issues binding to an ADAM userProxy you are getting the error "Invalid Credentials Server error: 8009030C: LdapErr: DSID-0C0903AA, comment: AcceptSecurityContext error, data 202d, v1772 Error 0x8009030C The logon attempt failed" in LDP you are trying to setup SSL for AD LDS on Windows Server 2008 Server Core In my case, the solution to the first two problems ended up being the impetus to write the solution for the third bullet above.

1dent1ty cHa0s: Issues when binding to AD LDS (ADAM) userProxy

My problem first began when testing binds to userProxy objects in AD LDS connecting back to an AD 2008 forest. Here was my configuration: Binding to inetOrgPerson objects in ADAM worked fine, but userProxy binds did not. Further digging in the LDS server's Security Event Log yielded this error: Frequently used SSL commands. Using opensslusing keytool (included in recent Sun java reference implementations)

frequently used SSL commands

Introduction to LDAP. Michael Donnelly If you work in the computing industry, the chances are good that you've heard of LDAP by now.

Introduction to LDAP

Wondering what all the excitement is about? Want to know a little more about the underlying technology? You've come to the right place. This introduction - the first in a series of articles describing how to design, implement, and integrate an LDAP environment at your company - will familiarize you with the concepts behind LDAP while leaving the really hardcore details for later. To start with, what's happening with LDAP today is exciting. But wait, you say. What is LDAP, anyway? The Lightweight Directory Access Protocol, better known as LDAP, is based on the X.500 standard, but significantly simpler and more readily adapted to meet custom needs.

Using "LDAP" in a sentenceIn everyday conversation, you'll hear well-intentioned people say things like, "Should we be storing that in LDAP? " Is an LDAP information directory a database? The structure of an LDAP directory tree. Open SSL Reference. Ca - sample minimal CA application openssl ca [-verbose] [-config filename] [-name section] [-gencrl] [-revoke file] [-crl_reason reason] [-crl_hold instruction] [-crl_compromise time] [-crl_CA_compromise time] [-crldays days] [-crlhours hours] [-crlexts section] [-startdate date] [-enddate date] [-days arg] [-md arg] [-policy arg] [-keyfile arg] [-key arg] [-passin arg] [-cert file] [-selfsign] [-in file] [-out file] [-notext] [-outdir dir] [-infiles] [-spkac file] [-ss_cert file] [-preserveDN] [-noemailDN] [-batch] [-msie_hack] [-extensions section] [-extfile section] [-engine id] [-subj arg] [-utf8] [-multivalue-rdn] The ca command is a minimal CA application.

Open SSL Reference

It can be used to sign certificate requests in a variety of forms and generate CRLs it also maintains a text database of issued certificates and their status. The options descriptions will be divided into each purpose. OpenSSL Command-Line HOWTO. OpenSSL Command-Line HOWTO Initial publication: June 13, 2004 Most recent revision: January 3, 2013 The openssl application that ships with the OpenSSL libraries can perform a wide range of crypto operations.

OpenSSL Command-Line HOWTO

This HOWTO provides some cookbook-style recipes for using it. The openssl command-line binary that ships with the OpenSSL libraries can perform a wide range of cryptographic operations. Documentation for using the openssl application is somewhat scattered, however, so this article aims to provide some practical examples of its use. Just to be clear, this article is strictly practical; it does not concern cryptographic theory and concepts. The nature of this article is that I’ll be adding new examples incrementally. How do I find out what OpenSSL version I’m running? Use the version option. $ openssl version OpenSSL 0.9.8b 04 May 2006 You can get much more information with the version -a option.

How do I get a list of the available commands? Keytool-Key and Certificate Management Tool. OpenSSL Self-Signed CA. Setting up a basic CA for development certificate issuance via OpenSSL is fairly simple, but most of the tutorials available online don't show every step.

OpenSSL Self-Signed CA

This guide attempts to be as clear as possible, but if you spot anything that could use more explanation don't hesitate to leave a comment. If you don't have a copy of OpenSSL on your machine, download it now. Linux and OS X users should already have it on their systems, but Windows users can get the latest binaries here. Please note that if you are running a version of OpenSSL prior to 0.9.8 that signing the same CSR multiple times will cause an error (due to lack of support for unique_subject=no). RHEL4 ships with 0.9.7a. Surviving a bad RNG. A couple of weeks ago I wrote a long post about random number generation, which I find to be one of the most fascinating subjects in cryptography -- mostly because of how terrible things get when people screw it up.

Surviving a bad RNG

And oh boy, do people screw it up. Back in 2008 it was Debian, with their 'custom' OpenSSL implementation that could only produce 32,768 possible TLS keys (do you really need more?) In 2012 it's 25,000 factorable TLS public keys, all of which appear to have been generated by embedded devices with crappy RNGs. When this happens, people get nervous. Cunning: Importing private keys into a Java keystore using keytool. For ages the keytool application shipped as part of Java could provide all the functionality to generate a private key and certificate sign request from a Java keystore, but the most basic function, importing a preexisting private key and certificate generated externally, remained overlooked.

Cunning: Importing private keys into a Java keystore using keytool

This is fixed in Java 6, at long last. The solution is to convert your existing certificate and key into a PKCS12 file, and then use the keytool functionality to merge one keystore with another one. Java 6 can treat a PKCS12 file as a keystore, so putting this together, you get this: keytool -importkeystore -deststorepass changeit -destkeypass changeit -destkeystore my-keystore.jks -srckeystore cert-and-key.p12 -srcstoretype PKCS12 -srcstorepass cert-and-key-password -alias 1 The alias of 1 is required to choose the certificate in the source PKCS12 file, keytool isn't clever enough to figure out which certificate you want in a store containing one certificate.

Spring Security.

CAS SSO

Introduction to Membership. To use membership, you must first configure it for your site.

Introduction to Membership

The following are the basic steps you follow in order to configure membership: If you have configured the application to use forms authentication, ASP.NET will automatically display the login page if an unauthenticated user requests a protected page. Each time the user requests a page, ASP.NET forms authentication checks whether the user is authenticated. If a page is restricted, users who are authenticated and are members of the approved roles are allowed to view the page. Anonymous users (users who are not logged in) are directed to the login page. After a user has been authenticated, the membership system makes available an object that contains information about the current user. ASP.NET page methods are only as secure as you make them - Encosia. Note: This post is part of a long-running series of posts covering the union of jQuery and ASP.NET: jQuery for the ASP.NET Developer.

Topics in this series range all the way from using jQuery to enhance UpdatePanels to using jQuery up to completely manage rendering and interaction in the browser with ASP.NET only acting as a backend API. If the post you're viewing now is something that interests you, be sure to check out the rest of the posts in this series. One of the most persistent misconceptions about ASP.NET’s page methods is the notion that they have some intrinsic protection against requests that don’t originate from the page where they’re defined. Since a page method’s code resides within a page’s code-behind file, it’s intuitive to assume that those methods benefit from some form of inherent security. Unfortunately, that is not the case.