System Design and Philosophy

CORE's technical approach is avoid monolithic designs and to combine standards-based, resilient and scalable components in a constellation that matches the needs of the entire value chain. Each system component interacts through well-defined interfaces with other components. Each of them can be replaced, have its own design team; it can even be run on separate hardware at a different location.

Standards-based protocols

The CORE SRS and its peripheral systems rely on meticulous compliance with published standard protocols.

EPP Support

Domain name provisioning is based on EPP 1.0 as revised in 2007 (RFC 4930). CORE EPP implementation is compliant in all aspects and for all transactions. Any special functionality is based on EPP in strict compliance with RFC 3735 (Guidelines on extending EPP).

Additional Protocols Available

In addition to EPP, the CORE SRS supports simplified key-value pair templates and composite requests, based on the CORE Payload Specification Version 2.0 (CPS). This specification is publicly available. CPS templates can used interchangeably with EPP at any time. One advantage of CPS is its human readability and easy editing. CPS request can be sent over all kinds of transport, including email, HTTPS, socket connections or TLS.

Shared Source Code

All systems run CORE rely on a unified code base. Functionality for Channel systems that is identical or similar to the functionality of a registry system is therefore built upon the same source code.

Modular Structure with Replaceable Components

CORE's Registry system is modular in its very foundations. The main modules are designed to be totally independent from one another; they can be run on the same hardware in the same location or on separate hardware, and in different locations. The interactions between the systems are based on standardized feed protocols. This also enables CORE to run several shared registration system in conjunction with a single account server, or several Whois servers. Most importantly, it enables the various system components to be managed by different teams if need be, thus radically reducing the danger of human resources bottlenecks

SRS Main Module

Most functions of CORE's main SRS module are identical for a central registration system and channel system. As a channel system, it receives requests from registrations over EPP or other protocols and connects to other registration systems via EPP. As a central registration system, it receives request from registrars in the same fashion, and also provisions the name server infrastructure.

Account Server

The account server (or microsettlement server) can be run as a separate unit in a separate location. It is connected to one or several shared registration systems via CORE's Account Server Protocol. The account server can run several accounts for the same SRS participant. It can consolidate accounts for one participant from several SRS installations. It supports multiple currencies and automatic currency conversion, generates invoices. Where banks offer electronic account reports, the account server can automatically process receipts of funds. It supports temporary credit limits that automatically revert back to the previous lower limit after the expiration of the temporary credit line.

Whois Server

Whois servers can be fed from one or several SRS installations using CORE's Whois Server feed specification. The Whois server infrastructure supports data mining protection, whitelisting, rate limitation, differentiation of depth of data between port 43 and web whois service, email address obfuscation and other means to protect registrants against the abuse of whois data.