Doesn't an Oracle go against the Blockchain principles? From what I understand of the blockchain, the main motivation, the very foundation of this technology, is the search for peer-to-peer exchange without mutual trust, without a trusted third party, so trustless exchanges. 

However, the purpose of an Oracle is to provide an external data that is invertible. It is therefore necessary to have confidence in this oracle, while it can provide false data (voluntarily knowing that it can be beneficial or not by simple measurement error (for an IoT sensor) / algorithm error / human error...).

In this context, does an oracle not go against the previous principle? Where are there ways to get trustless Oracles?

Thank you all.
The use of an Oracle does somewhat go against the founding principle of transacting without the need for a trusted third party.

As Nakamoto's whitepaper states:


  What is needed is an electronic payment system based on cryptographic proof instead of trust,
  allowing any two willing parties to transact directly with each other without the need for a trusted
  third party.


Of course the majority of transactions do not need trusted third parties such as oracles or escrow agents. But for those that do, trust is a key issue.

Other people have suggested trust minimisation strategies that can be used with oracles.


  
  multiple independent oracles
  trusted hardware
  Amazon AWS oracles