[proofplan]
We prove the two directions separately. Starting from a matroid, maximality gives non-containment of bases, and the independent-set exchange axiom gives the basis exchange property by first exchanging into a basis and then using maximality. Conversely, assuming the two basis axioms, we define independent sets to be subsets of members of $\mathcal B$. The main work is to prove first that all members of $\mathcal B$ have the same cardinality, and then to use a maximal-overlap choice of a basis containing a given independent set to verify the independent-set exchange axiom.
[/proofplan]
[step:Derive the two basis axioms from the independent-set axioms]
Let $M$ be a matroid on the finite ground set $E$, and let $\mathcal I_M \subseteq 2^E$ denote its collection of independent sets. Let $\mathcal B_M \subseteq \mathcal I_M$ be the collection of bases, meaning maximal independent subsets of $E$.
Since $E$ is finite and $\varnothing \in \mathcal I_M$, at least one maximal independent subset of $E$ exists. Thus $\mathcal B_M$ is nonempty. If $B_1, B_2 \in \mathcal B_M$ and $B_1 \subseteq B_2$, then maximality of $B_1$ among independent subsets of $E$ forces $B_1 = B_2$. Hence no member of $\mathcal B_M$ properly contains another.
Now let $B_1, B_2 \in \mathcal B_M$ and let $e \in B_1 \setminus B_2$. Define $A := B_1 \setminus \{e\}$. Then $A \in \mathcal I_M$ by heredity, and $A \cup \{e\}=B_1$ is an independent extension of $A$ of cardinality $|B_1|$.
We first show that all bases of $M$ have the same cardinality. If $C,D \in \mathcal B_M$ and $|C| < |D|$, the independent-set exchange axiom applied to $C,D \in \mathcal I_M$ gives an element $d \in D \setminus C$ such that $C \cup \{d\} \in \mathcal I_M$, contradicting maximality of $C$. Therefore $|C|=|D|$ for all $C,D \in \mathcal B_M$.
Apply the independent-set exchange axiom to the independent sets $A$ and $B_2$. Since $|A| = |B_1|-1 < |B_2|$, there exists $f \in B_2 \setminus A$ such that $A \cup \{f\} \in \mathcal I_M$. Because $e \notin B_2$, the containment $f \in B_2 \setminus A$ implies $f \in B_2 \setminus B_1$. The independent set $A \cup \{f\}$ has cardinality $|B_1|$, which is the common cardinality of all bases. Hence it is maximal independent. Indeed, if there were an independent set $K \in \mathcal I_M$ with $A \cup \{f\} \subsetneq K$, then, because $E$ is finite, repeatedly adjoining independent elements extends $K$ to a maximal independent set $D \in \mathcal B_M$ with $K \subseteq D$. This would give $|D|>|A \cup \{f\}|=|B_1|$, contradicting the common cardinality of bases. Therefore $(B_1 \setminus \{e\}) \cup \{f\} = A \cup \{f\} \in \mathcal B_M$. This is the basis exchange condition.
[/step]
[step:Define the candidate independent sets from the basis collection]
Conversely, suppose $\mathcal B \subseteq 2^E$ is nonempty and satisfies the two stated conditions. Define $\mathcal I := \{I \subseteq E : I \subseteq B \text{ for some } B \in \mathcal B\}$. Every element of $\mathcal I$ is a subset of $E$, so $\mathcal I \subseteq 2^E$. Since $\mathcal B$ is nonempty, choose $B_0 \in \mathcal B$. Then $\varnothing \subseteq B_0$, so $\varnothing \in \mathcal I$.
The hereditary axiom follows directly from the definition. Indeed, if $I \in \mathcal I$ and $I' \subseteq I$, then there exists $B \in \mathcal B$ with $I \subseteq B$, and hence $I' \subseteq B$. Thus $I' \in \mathcal I$.
[/step]
[step:Prove that all proposed bases have the same cardinality]
We prove that $|B_1|=|B_2|$ for all $B_1,B_2 \in \mathcal B$. Suppose, toward a contradiction, that there are $B_1,B_2 \in \mathcal B$ with $|B_1|<|B_2|$.
Define a finite sequence of bases as follows. Set $C_0 := B_1$. If $C_k \setminus B_2$ is nonempty, choose an element $e_k \in C_k \setminus B_2$. By the exchange axiom applied to $C_k,B_2 \in \mathcal B$ and $e_k \in C_k \setminus B_2$, there exists $f_k \in B_2 \setminus C_k$ such that $C_{k+1} := (C_k \setminus \{e_k\}) \cup \{f_k\} \in \mathcal B$. This operation preserves cardinality, so $|C_{k+1}| = |C_k| = |B_1|$.
It also increases the intersection with $B_2$ by exactly one, because $e_k \notin B_2$ is removed and $f_k \in B_2$ is added, so $|C_{k+1} \cap B_2| = |C_k \cap B_2| + 1$.
Since $E$ is finite, this process must stop after at most $|B_1|$ exchanges. At the stopping time $m$, we have $C_m \setminus B_2 = \varnothing$, so $C_m \subseteq B_2$. Also $|C_m|=|B_1|<|B_2|$, so $C_m$ is a proper subset of $B_2$. This contradicts the no-containment axiom, because $C_m,B_2 \in \mathcal B$. Hence all members of $\mathcal B$ have the same cardinality.
[guided]
The point of this step is to extract equal cardinality from the two basis axioms alone. We do not yet have a matroid, so we cannot cite the usual fact that all bases of a matroid have equal size.
Assume for contradiction that $B_1,B_2 \in \mathcal B$ satisfy $|B_1|<|B_2|$. The first basis axiom says that no member of $\mathcal B$ properly contains another member of $\mathcal B$. Therefore $B_1 \subsetneq B_2$ is impossible, and since $|B_1|<|B_2|$, the set $B_1 \setminus B_2$ is nonempty. Choose an element $e_0 \in B_1 \setminus B_2$. The exchange axiom gives an element $f_0 \in B_2 \setminus B_1$ such that $C_1 := (B_1 \setminus \{e_0\}) \cup \{f_0\} \in \mathcal B$.
This replacement does two important things. First, it preserves cardinality: $|C_1| = |B_1|$. Second, it increases the overlap with $B_2$, because we removed an element not in $B_2$ and inserted an element in $B_2$: $|C_1 \cap B_2| = |B_1 \cap B_2| + 1$.
We now repeat the same operation. In general, after $k$ exchanges we have a basis $C_k \in \mathcal B$ with $|C_k|=|B_1|$. If $C_k \setminus B_2$ is nonempty, choose $e_k \in C_k \setminus B_2$. Applying the exchange axiom to the ordered pair $C_k,B_2$ gives $f_k \in B_2 \setminus C_k$ with $C_{k+1} := (C_k \setminus \{e_k\}) \cup \{f_k\} \in \mathcal B$. Again, $|C_{k+1}| = |C_k| = |B_1|$, and $|C_{k+1} \cap B_2| = |C_k \cap B_2| + 1$.
Because $E$ is finite, the integer $|C_k \cap B_2|$ cannot increase forever. Therefore the process stops at some basis $C_m \in \mathcal B$ with $C_m \setminus B_2 = \varnothing$. Thus $C_m \subseteq B_2$. But the cardinality has remained $|B_1|$, so $|C_m| = |B_1| < |B_2|$. Therefore $C_m \subsetneq B_2$, contradicting the no-containment axiom for members of $\mathcal B$. This contradiction proves that every two members of $\mathcal B$ have the same cardinality.
[/guided]
[/step]
[step:Verify the independent-set exchange axiom]
Let $I,J \in \mathcal I$ satisfy $|I|<|J|$. We must prove that there exists $z \in J \setminus I$ such that $I \cup \{z\} \in \mathcal I$.
Choose $C \in \mathcal B$ such that $J \subseteq C$. Among all bases in $\mathcal B$ that contain $I$, choose $B \in \mathcal B$ such that $|B \cap J|$ is maximal. Subject to that choice, choose $B$ such that $|B \cap C|$ is maximal. Such a choice exists because $E$ is finite and $\mathcal B \subseteq 2^E$ is finite.
If there exists $z \in (B \cap J) \setminus I$, then $z \in J \setminus I$ and $I \cup \{z\} \subseteq B$. Hence $I \cup \{z\} \in \mathcal I$, and the exchange axiom holds. It remains to consider the case $B \cap J \subseteq I$.
Since $I \subseteq B$, the assumption $B \cap J \subseteq I$ gives $B \cap J = I \cap J$. Therefore $|J \setminus B| = |J| - |B \cap J| = |J| - |I \cap J|$.
Because $|I|<|J|$, we have $|J| - |I \cap J| > |I| - |I \cap J| = |I \setminus J|$.
Since $J \subseteq C$, every element of $I \setminus C$ lies in $I \setminus J$, so $|I \setminus C| \le |I \setminus J| < |J \setminus B|$.
All members of $\mathcal B$ have the same cardinality, so $|B|=|C|$. Hence $|B \setminus C| = |C \setminus B|$. Also $J \setminus B \subseteq C \setminus B$ because $J \subseteq C$. Thus $|B \setminus C| = |C \setminus B| \ge |J \setminus B| > |I \setminus C|$.
Since $I \subseteq B$, we have $I \cap (B \setminus C) = I \setminus C$. Therefore there exists an element $y \in (B \setminus C) \setminus I$.
Apply the basis exchange axiom to $B,C \in \mathcal B$ and $y \in B \setminus C$. There exists $z \in C \setminus B$ such that $B' := (B \setminus \{y\}) \cup \{z\} \in \mathcal B$. Because $y \notin I$ and $I \subseteq B$, we still have $I \subseteq B'$. Hence $B'$ is a basis containing $I$.
If $z \notin J$, then removing $y \notin J$ and adding $z \notin J$ preserves the intersection with $J$, so $|B' \cap J| = |B \cap J|$. But $y \notin C$ and $z \in C$, so the intersection with $C$ increases: $|B' \cap C| = |B \cap C| + 1$. This contradicts the secondary maximality of $|B \cap C|$ among bases containing $I$ with maximal intersection with $J$. Therefore $z \in J$.
Since $z \in C \setminus B$ and $I \subseteq B$, we have $z \notin I$. Thus $z \in J \setminus I$. Finally, $I \cup \{z\} \subseteq B'$, so $I \cup \{z\} \in \mathcal I$. This proves the independent-set exchange axiom.
[/step]
[step:Identify the bases of the constructed matroid]
The preceding steps show that $\mathcal I$ is nonempty, hereditary, and satisfies the independent-set exchange axiom. Hence $\mathcal I$ is the collection of independent sets of a matroid on $E$.
It remains to identify its bases. Every $B \in \mathcal B$ belongs to $\mathcal I$ and is maximal in $\mathcal I$: if $B \subseteq I \in \mathcal I$, then $I \subseteq B'$ for some $B' \in \mathcal B$, so $B \subseteq B'$, and the no-containment axiom gives $B=B'$, hence $I=B$.
Conversely, let $I_{\max} \in \mathcal I$ be maximal with respect to inclusion. By definition of $\mathcal I$, there exists $B \in \mathcal B$ such that $I_{\max} \subseteq B$. Since $B \in \mathcal I$ and $I_{\max}$ is maximal in $\mathcal I$, we get $I_{\max}=B$. Thus the maximal independent sets of the constructed matroid are exactly the members of $\mathcal B$.
Therefore $\mathcal B$ is precisely the collection of bases of a matroid on $E$, and the independent sets are exactly the subsets of members of $\mathcal B$.
[/step]