The correct option is B Although
The subordinate clause (the book was written n 1678) depends on the main clause (it was only published in 1690) for its full meaning. Hence a subordinating conjunction is used. The subordinate clause is contrast in meaning to the main clause, even though the book was written in an earlier date it got published way later. Hence a conjunction is used that expresses contrast, and not time. As 'before' is used for time-related sentences, and the given sentence does not focus on time, option A is incorrect. 'Although' is used when the clauses are opposite or contrast in meaning, hence option B is correct. 'As' is used when the subordinate clause is a cause or justification of why the action in the main clause takes place, since the subordinate clause does not justify why the book got published much later, option C is incorrect. 'If' is used when the subordinate clause is a condition based on which the main clause takes place, as the given subordinate clause is not conditional, option D is incorrect.