someone could purchase entry credits without using FCT
Good question. It is entirely a matter of perspective.
From the perspective of the network, any entry of data must be paid for with Entry Credits, which can only be created with a corresponding decrementing of Factoids.
The system is setup so that the person who holds the private key for Factoids can be a different entity that the the EC private key holder.
Lets take the example of BIGINT, a large institution who's lawyers have forbidden it from dealing with any tradable token. ECs cannot be reassigned, so those are just fintech denominated in KiB, which the IT department can use no problem.
Here is how BIGINT will use Factom without using Factoids:
BIGINT creates an EC key, and issues a Purchase Order to a Intermediary A. Intermediary A's lawyers and accountants are comfortable with tradable tokens. Intermediary A purchases Factoids from the market and converts them to Entry Credits, crediting BIGINT's EC key. Intermediary A creates an invoice on BIGINT's standard NET30 terms and sends it to BIGINT's accounts payable department. BIGINT sends a USD$ ACH transfer 29 days after the invoice, per the terms.
Viola, BIGINT has used Factom without using Factoids.
Once the federated server system is up and running, does that mean FCT transactions can be processed in seconds?
Yes, to a degree. It comes down to a matter of trust and time. Like in bitcoin, the confidence increases with time, but is more granular at short time periods.
Here is a bitcoin analogy: assume that you knew which miner was going to win the next block. Now assume they promised to include your transaction in the next block. That might be considered processed. There is still the chance that all the rest of the miners will orphan that block, and not include your transaction later.
Here are the levels of trust will occur in Factom:
1. Your full node client gets a transaction. It passes all the rules of the protocol
+ a few seconds
2. The designated Federated server for that Chain broadcasts an acknowledgement for that transaction, arbitrating between any malleations or doublespends. (note, I think we solved malleation from anyone without the private key.
https://github.com/FactomProject/ed25519/commit/dadf2ec666e4abca02e8275370686855b9e419cf)
+ a few seconds
3. The other Federated servers do not reject the designated one for any misdeeds.
+ The rest of the minute
4. The Federated servers shuffle, come to loose consensus, and change which chains they are responsible for.
+ The end of the 10 minute period
5. The Federated servers add up all the acknowledgements and create the block structures. Then, the majority of them broadcast out a signature of the block. The Bitcoin anchor is created and broadcast on the Bitcoin network.
+ 10 more minutes.
6. A new block is created including the signatures of a majority of the Federated servers.
+ 1 hour
7. The Bitcoin anchor transaction has 6 confirmations, making it permanent, and also showing that Factom as a system is not itself forked.
Thanks for the long thoughtful responses to my questions. It seems it's much simpler to just trade FCT than to bother with trading Entry Credits. As for the quick transaction processing, it sounds like there is a sort of "soft-confirmation" by the federated servers before coming to a more trusted "hard-confirmation" through the Bitcoin anchor transaction. That does seem like a best-of-both-worlds compromise. Cool.